BAB 2 LANDAS AN TEORI
2.1 Teori Umum 2.1.1 Data, Basis Data dan Sistem Basis Data Data adalah komponen yang paling penting dalam DBM S dari sudut pandang end-user. Data bertindak sebagai jembatan yang menghubungkan antara mesin dengan pengguna (Connolly, 2005, p19), sedangkan menurut Atzeni, Paolo, 2003, Data adalah informasi yang tercatat dan perlu diinterpretasikan agar dapat menghasilkan informasi. Ada beberapa definisi tentang basis data yang disampaikan oleh beberapa pakar antara lain : a. Basis data adalah kumpulan data yang terhubung secara logikal, dan deskripsi dari data tersebut, yang dirancang untuk memenuhi kebutuhan informasi dari suatu organisasi. (Connoly&Begg, 2005, p15) b. Basis data adalah kumpulan data yang digunakan untuk merepresentasikan informasi yang dibutuhkan oleh sistem informasi. (Atzeni, 2003, p2) c. Basis data adalah kumpulan file yang saling terkait. (Whitten, Bentley & Dittman, 2004, p518) Sedangkan sistem basis data adalah komponen pokok dari sebuah sistem informasi dan perkembangan serta penggunaan basis data harus dilihat dari sudut pandang kebutuhan perusahaan yang lebih besar. (Connoly&Begg, 2005, p283) 7
8 2.1.2 Database Management System (DBMS ) Database Management System (DBM S) adalah sebuah piranti lunak yang memungkinkan pengguna untuk mendefinisikan, membuat, memelihara, dan mengontrol akses ke basis data. (Connolly &Begg, 2005, p16) Fasilitas yang biasa disediakan dalam Database Management System adalah : 1. Pengguna dapat mendefinisikan basis data dengan menggunakan Data Definition Language (DDL). 2. Pengguna dapat melakukan Insert (menambah), Update (memperbaharui), Delete (menghapus), Retrieve (mengambil), biasanya disebut dengan Data Manipulation Language (DM L). 3. M enyediakan akses control ke basis data seperti (Connoly & Begg, 2005, p16) : a. Sistem Keamanan (Security System), sistem ini untuk mencegah pengguna yang tidak mempunyai hak akses dapat memasuki basis data. b. Sistem Integritas (Integrity System), sistem ini untuk memelihara kekonsistenan data yang disimpan dalam basis data. c. Sistem akses kontrol bersama (Concurrency Control System), sistem ini untuk mengijinkan akses basis data secara bersamaan. d. Kontrol sistem perbaikan (Recovery Control System), sistem ini berguna untuk mengembalikan basis data ke kondisi sebelumnya setelah terjadi kegagalan perangkat lunak atau perangkat keras.
9 M enurut Connoly & Begg (2005, p19), ada 5 komponen utama dalam lingkungan DBM S, yaitu: Hardware
Software
Data
Prosedur
M anusia
Penghubung
M anusia
M esin
Gambar 2.1 DBMS En vironment a. Perangkat keras (Hardware) Perangkat keras dapat berubah single personal komputer, single mainframe, dan sebuah komputer jaringan. Penggunaan perangkat keras tergantung pada kebutuhan organisasi dan DBM S yang digunakan. b. Perangkat lunak (Software) Komponen perangkat lunak terdiri dari perangkat lunak DBM S itu sendiri dan program aplikasi, bersama dengan sistem operasi (O S), termasuk perangkat lunak untuk jaringan jika DBM S digunakan melalui sebuah jaringan. c. Data Komponen yang paling penting dalam DBM S berasal dari sudut pandang end user yaitu data. Data bertindak sebagai jembatan yang menghubungkan antara mesin dengan pengguna. Basis data berisi data operasional dan metadata. d. Prosedur Prosedur menunjuk pada intruksi-intruksi dan aturan-aturan yang mengatur desain dan kegunaan dari basis data. Pengguna sistem dan staff yang mengatur basis data membutuhkan aturan-aturan untuk menjalankan
10 sebuah sistem. Hal ini dapat terdiri dari petunjuk tentang cara: 1. M asukkan ke DBM S. 2. M enggunakan fasilitas DBM S tertentu atau program aplikasi. 3. M ulai dan berhenti DBM S. 4. M embuat salinan cadangan dari basis data yang menangani kegagalan perangkat keras atau perangkat lunak. Ini dapat mencakup prosedur tentang cara untuk mengidentifikasi komponen kegagalan perangkat keras atau perangkat lunak, cara memperbaiki komponen kegagalan perangkat keras atau perangkat lunak dan mengikuti perbaikan kesalahan, bagaimana memulihkan basis data. 5. M engubah struktur dari tabel, reorganisasi database di beberapa disk, memperbaiki kinerja, atau data arsip untuk penyimpanan sekunder. e. Pemakai(user) Ada 4 kelas pengguna dalam penggunaan DBM S, yaitu: 1) Database Administrator dan Data Administrator Database Administrator bertanggung jawab terhadap realisasi fisikal dari basis data, termasuk desain fisikal basis data dan implementasi, keamanan dan integritas kontrol, pemeliharaan sistem operasi dan menjamin penampilan aplikasi untuk pengguna. Data administrator bertanggung jawab atas sumber data termasuk perencanaan basis data, pengembangan dan pemeliharaan, prosedur, dan konseptual/ logikal desain basis data.
11 2) Database Designer Ada 2 tipe database designer, yaitu: a. Logical Database Designer Database Designer mengarah pada indentifikasi data (entitas dan atribut), hubungan data dan constraint data yang akan disimpan dalam basis data. b. Physical Database Designer Physical Database Designer memutuskan bagaimana desain basis data logical direalisasikan dalam bentuk fisikal. 3) Application Developer Application
Developer
bertanggung
jawab
untuk
mengimplementasikan aplikasi program yang memenuhi kebutuhan end user. 4) End user End user adalah “client” untuk basis data yang telah dirancang. M enurut penggunaan sistem end user dibagi 2, yaitu: a. Native User Native user adalah pengguna yang tidak mengerti tentang basis data dan DBM S. Native user menggunakan basis data dengan memasukkan perintah sederhana atau memilih pilihan dari menu.
12 b. Sophisticated User Sophisticated user adalah pengguna yang sudah mengerti tentang basis data dan DBM S. Sophisticated user menggubahkan high-level query language seperti SQL untuk menampilkan kebutuhan operasi.
2.1.3 Siklus Basis Data Untuk merancang aplikasi sistem basis data diperlukan tahapan-tahapan terstruktur berikut ini :
13 Database Planning
System Definition
Requirement Collection and Analysis
Conceptual Database Design DBMS Selection (optional)
Application Design
Logical Database Design
Physical Database Design
Prototyping (optional)
Implementation Data Conversion and Loading Testing Operational M aintenance
Gambar 2.2 Diagram S iklus Basis Data
14 a. Perencanaan Basis Data (Database Planning) Perencanaan memperbolehkan
basis
data
adalah
tingkat-tingkat
pada
aktivitas aplikasi
manajemen basis
data
yang untuk
direalisasikan seefisien dan seefektif mungkin (Connoly&Begg, 2005, p285). b. Sistem Definisi (Definition System) Sistem definisi adalah penjabaran dari jangkauan dan batasan aplikasi basis data, penggunaan basis data dan lingkungan tempat basis data diimplementasikan. Sistem definisi ini sangat penting dilakukan agar perancangan basis data lebih terfokus. c. Pengumpulan Kebutuhan dan Analisis (Requirement Collection and Analysis) Tahap ini dilakukan pengumpulan dan analisa informasi tentang bagian suatu organisasi yang didukung oleh aplikasi basis data dan menggunakan informasi tersebut
untuk mengidentifikasikan
kebutuhan
pengguna
terhadap sistem baru yang akan dibuat (Connoly&Begg, 2005, p288). Fact finding adalah teknik-teknik yang digunakan untuk mengumpulkan fakta-fakta tentang sistem dan kebutuhan-kebutuhannya. Beberapa teknik fact finding yang biasa dilakukan adalah sebagai berikut : 1. M emeriksa dokumentasi M emeriksa dokumen-dokumen, formulir, laporan, dan berkas yang terkait dengan sistem yang sedang berjalan pada perusahaan atau organisasi.
15 2. Wawancara Wawancara
bertujuan
untuk
mengumpulkan
fakta,
mengidentifikasikan kebutuhan-kebutuhan dan mengumpulkan ide-ide serta pendapat (Connoly&Begg, 2005, p317). 3. M engamati kegiatan perusahaan M elakukan pengamatan aktivitas-aktivitas yang dilakukan oleh perusahaan atau organisasi. 4. Penelitian Penelitian adalah penyelidikan atau suatu usaha pengujian yang dilakukan secara teliti, dan kritis dalam mencari fakta-fakta atau prinsipprinsip dengan menggunakan langkah-langkah tertentu. 5. Kuisioner Kuisioner
adalah
suatu
dokumen
yang
bertujuan
untuk
mengumpulkan fakta-fakta yanng dikumpulkan dari banyak orang sambil
menjaga
kontrol
terhadap
tanggapan
yang
diberikan
(Connoly&Begg, 2005, p320). d. Perancangan Basis Data (Database Design) Perancangan basis data adalah proses pembuatan suatu rancangan untuk basis data yang akan mendukung operasi dan tujuan perusahaan yang dibutuhkan oleh sistem basis data. Tahap ini dilakukan perancangan basis data secara konseptual, logikal dan fisikal.
16 e. Pemilihan DBMS (DBMS Selection(Optional)) DBM S (Database Management System) adalah perangkat lunak khusus yang digunakan untuk membuat, mengakses, mengontrol dan mengatur sebuah basis data. (Whitten, 2004, p760) Tahapan ini dilakukan pemilihan DBM S yang paling cocok untuk basis data. Langkah-langkah utama yang dilakukan untuk pemilihan DBM S adalah : 1. M endefinisikan terminology sebagai referensi 2. Daftar singkat tentang produk, biasanya dua atau tiga produk 3. Evaluasi produk 4. M erekomendasikan pemilihan dan pembuatan laporan f. Perancangan Aplikasi (Application Design) Tahap ini dilakukan untuk merancang tampilan layar untuk pemakai dan aplikasi program yang digunakan dan memproses basis data. g. Prototipe (Prototyping(Optional)) Prototipe adalah proses membangun sebuah model kerja dari aplikasi basis data. Tahap ini ditujukan untuk membangun prototype dari aplikasi basis
data.
Prototype
digunakan
untuk
memvisualisasikan
dan
mengevaluasikan bagaimana bentuk sistem tersebut. Prototyping dibagi menjadi dua strategi umum, yaitu : 1. Requirement Prototyping
adalah
menggunakan prototype untuk
menentukan kebutuhan dan tujuan aplikasi basis data. Ketika kebutuhan dan tujuan aplikasi basis data telah terpenuhi maka prototype sudah tidak digunakan lagi.
17 2. Evolutionary Prototyping mempunyai tujuan yang sama dengan requirement prototyping, tetapi perbedaannya adalah prototype tetap digunakan untuk perkembangan aplikasi basis data. h. Implementasi (Implementation) Implementasi adalah realisasi fisikal dari desain basis data dan desain aplikasi. Tahap ini dilakukan pembuatan definisi basis data secara eksternal, konseptual dan internal beserta program aplikasinya. i. Konversi Data (Data Convertion and Loading) Tahap ini dilakukan pemindahan data yang ada di dalam basis data yang baru dan mengubah aplikasi yang sedang berjalan agar dapat digunakan dalam basis data yang baru. j. Pengujian (Testing) Testing adalah suatu proses mengeksekusi program aplikasi yang bertujuan untuk menemukan kesalahan. Aplikasi basis data yang telah selesai akan diuji coba dengan tujuan mencari kesalahan yang timbul pada aplikasi tersebut. Dilakukan juga validasi aplikasi atas kebutuhan yang telah dispesifikasikan sebelumnya oleh penguna. k. Perawatan operasional (Operational Maintenance) Perawatan operasional adalah suatu proses memonitor dan memelihara sistem berdasarkan instalasi. Aktivitas yang biasa dilakukan dalam tahap ini adalah : 1. M emantau kinerja sistem. Jika kinerja sistem menurun di bawah level yang dapat diterima, maka basis data perlu ditata ulang. 2. Pemeliharaan dan peningkatan versi terbaru dari aplikasi basis data.
18 2.1.4 Tahapan Perancangan Basis Data M etodologi
perancangan
basis
data
dibagi
dalam
tiga
tahap
(Connoly&Begg, 2005, p438) : 1. Perancangan Konseptual Tahap ini merupakan pembuatan model informasi yang akan digunakan dalam perusahaan tetapi tidak tergantung kepada masalah fisik perusahaan tersebut, seperti DBM S yang digunakan, bahasa pemrograman, hardware yang digunakan, tingkat kinerja, dan masalah fisik lainnya. Langkah-langkah perancangan basis data konseptual secara garis besar adalah sebagai berikut : a) Penentuan entitas (entity) b) M endefinisikan hubungan (relationship) antar entitas c) M enerjemahkan hubungan setiap entitas 2. Perancangan Logikal Tahapan ini merupakan pembuatan model informasi yang digunakan oleh perusahaan berdasarkan pada model data khusus tetapi bebas dari DBM S tertentu dan masalah fisik lainnya. Langkah-langkah perancangan basis data logikal secara garis besar adalah sebagi berikut : a) M embangun sebuah data model logikal lokal dari model data konseptual lokal yang menggambarkan pandangan tertentu dari perusahaan dan kemudian model tersebut disahkan untuk memastikan strukturnya telah benar atau dengan kata lain dinormalisasikan.
19 b) M embuat kombinasi model data logikal lokal individual ke dalam sebuah model data logikal global tunggal yang menggambarkan perusahaan. Hasil akhir dari tahap ini adalah berupa kamus data yang berisi semua atribut beserta key-nya dan ERD secara keseluruhan dengan sebuah attribute key-nya. 3. Perancangan Fisikal Tahap ini merupakan proses pembuatan deskripsi dari implementasi basis data pada secondary stage yang menjelaskan basis relasi, organisasi file, dan indeks yang digunakan untuk memperoleh akses pada data. Tahapan ini juga perancang menentukan bagaimana basis data di implementasikan. Tahapan-tahapan perancangan basis data fisikal adalah : a. Ubah model data logikal global untuk DBM S b. M erancang representasi fisik c. M erancang user views d. M erancang mekanisme keamanan Berikut ini merupakan langkah-langkah metodologi dari perancangan basis data: 1. Perancangan Konseptual Basis Data Langkah 1 : membuat data model lokal yang konseptual untuk setiap tampilan. 1.1 : M engidentifikasi tipe-tipe entity 1.2 : M engidentifikasi tipe-tipe dari relationship
20 1.3 : M engidentifikasi dan hubungan atribut dengan tipe-tipe entity atau relationship 1.4 : M enentuan domain-domain dari atribut 1.5 : M enentukan atribut-atribut, candidate key, dan primary key 1.6 : Pertimbangkan penggunaan konsep enchanced modelling (optional) 1.7 : Periksa model dari redudancy 1.8 : M emvalidasikan model konseptual lokal terhadap transaksi pengguna 1.9 : M elihat kembali data model konseptual dengan pengguna 2. Perancangan Logikal Basis Data untuk M odel Relasional Langkah 2 : M embuat dan memvalidasi data model lokal yang logikal untuk setiap tampilan 2.1 : Hilangkan fitur-fitur yang tidak kompatibel dengan model relasional (optional) 2.2 : Turunkan relasi-relasi untuk data model logikal lokal 2.3 : M emvalidasikan relasi-relasi menggunakan normalisasi 2.4 : M emvalidasikan relasi-relasi terhadap transaksi pengguna 2.5 : M enentukan integrity constraints (batasan yang diberlakukan untuk menjaga basis data agar tetap konsisten) 2.6 : M elihat kembali data model logikal lokal dengan pengguna Langkah 3: M embuat dan memvalidasikan data model global yang logikal 3.1 : M enggabungkan data model logikal lokal jadi model global
21 3.2 : M emvalidasikan data model logikal global 3.3 : Periksa untuk perkembangan mendatang 3.4 : M elihat kembali data model logikal global dengan pengguna 3. Perancangan Fisikal Basis Data untuk Basis Data Relasional Langkah 4 : M engubah data model global yang logikal untuk target DBM S 4.1 : M erancang relasi-relasi dasar 4.2 : M erancang representasi data turunan 4.3 : M erancang enterprise constraints Langkah 5 : M erancang representasi fisik 5.1 : Analisa transaksi 5.2 : M emilih pengaturan file 5.3 : M emilih pengindeksan 5.4 : M emperkirakan kebutuhan disk space Langkah 6: M erancang tampilan pengguna Langkah 7: M erancang mekanisme keamanan Langkah 8: M empertimbangkan pengenalan dari kontrol Langkah 9: M engawasi dan mengatur sistem operasi
2.1.5 Entity Relationship Model Salah satu aspek yang sulit dalam perancangan basis data adalah perancang, programmer, dan pemakai cenderung melihat data dengan cara yang berbeda. Jadi untuk memastikan pemahaman secara ilmiah dari data dan bagaimana data digunakan oleh perusahaan, dibutuhkan sebuah bentuk
22 komunikasi non-teknis yang disebut dengan Entity Relationship Modelling (Connoly&Begg, 2005, p45). Di bawah ini adalah contoh gambar Entity Relationship Modelling :
Entity
A
Relate to
B
Relationship Name Gambar 2.3 Notasi Entity Relationship Modelling
2.1.5.1 Tipe Entitas Tipe entitas adalah kumpulan objek-objek dengan properties yang sama, yang didefinisikan oleh perusahaan yang keberadaannya tidak bergantung. Tipe entitas didefinisikan sebagai kumpulan entitas yang memiliki atribut yang sama. Entity occurence adalah objek atau tipe entitas yang didefinisikan secara unik. Tipe entitas diklasifikasikan menjadi ; 1. Tipe entitas Kuat, yaitu tipe entitas yang keberadaannya tidak bergantung pada tipe entitas lainnya (Connoly&Begg, 2005, p354). 2. Tipe entitas Lemah, yaitu tipe entitas yang keberadaannya bergantung pada tipe entitas lainnya (Connoly&Begg, 2005, p355).
23 Entitas kuat
Konsumen
Entitas lemah
M enyatakan
noKonsument {PK} nama namaDpn namaBlkg telp
Pilihan tipePilihan harga
Gambar 2.4 Diagram Entitas Kuat dan Entitas Lemah
2.1.5.2 Tipe Relasi Tipe relasi adalah satu set dari penyatuan antara tipe-tipe entitas. Setiap tipe relasi diberi nama sesuai dengan fungsinya. Relationship Occurence adalah gabungan yang dapat diidentifikasikan secara unik, yang meliputi suatu kejadian dari setiap entity yang ada.
Derajat Relationship Derajat relationship adalah jumlah dari partisipasi entity dalam sebuah relationship (Connoly, 2005, p347). Lambang belah ketupat menggambarkan relasi yang memiliki derajat lebih dari dua. Nama relationship ditampilkan di dalam belah ketupat. Complex Relationship adalah sebuah relationship antara tiga atau lebih tipe entitas.
24
M endaftarkan
Pegawai
Kantor
konsumen Gambar 2.5 Representasi Diagram Derajat Tiga Dari Suatu Tipe Relationship (Connoly, 2005, p349)
Recursive Relationship Recursive relationship adalah sebuah tipe relationship dimana tipe entitas yang sama berpartisipasi lebih dari satu kali pada peran yang berbeda (Connoly, 2005, p349). Relationship dapat diberikan nama peran untuk menentukan fungs i dari setiap entitas yang terlibat dalam relationship tersebut. Nama peran juga dapat digunakan jika dua buah entitas dihubungkan lebih dari satu relationship Representasi diagram terhadap recursive relationship dapat dilihat pada gambar 2.6 dan gambar 2.7
25
Nama peran M engawasi
Pengawas Nama peran
Orang yang diawasi
Pegawai
Gambar 2.6 Represetasi Diagram Recursive Relationship dan Nama Peran (Connoly&Begg, 2005, p349)
Nama peran
M anager
M engatur
Pegawai Anggota i
Kantor Kantor
M emiliki
Kantor
Nama peran
Gambar 2.7 Represetasi Diagram Entitas dengan Dua Relationship yang berbeda beserta nama peran (Connoly&Begg, 2005, p350)
26 2.1.5.3 Atribut Atribut adalah sifat dari sebuah entity atau sebuah relationship. Atribut menyimpan nilai dari setiap entity occurence dan mewakili bagian utama dari data yang disimpan dalam basis data. Atribut domain adalah satuan nilai-nilai untuk satu atau beberapa atribut. Setiap atribut yang dihubungkan dengan sejumlah nilai disebut domain. Domain mendefinisikan nilai-nilai yang dimiliki sebuah atribut dan sama dengan konsep domain pada model relationship. Atribut dapat diklasifikasikan menjadi : 1. Simple Attribute, yaitu atribut yang terdiri dari satu komponen tunggal yang keberadaannya bebas. Simple attribute tidak dapat dibagi lagi menjadi komponen yang lebih kecil. 2. Composite Attribute, yaitu atribut yang terdiri dari banyak komponen dengan keadaan yang bebas. Dalam hal ini beberapa atribut dapat dipisahkan menjadi komponen yang lebih kecil. 3. Single Value Attribute, yaitu atribut yang memiliki nilai tunggal untuk masing-masing kejadian dari entity. Multi Value Attribute, yaitu atribut yang memiliki banyak nilai untuk masing-masing kejadian dari entity. 4. Derived Attribute, yaitu atribut menggantikan nilai yang diturunkan dari nilai sebuah atribut yang berhubungan, tidak perlu pada entity yang sama (Connoly&Begg, 2005, p351).
27 2.1.5.4 Keys Keys berfungsi untuk menghubungkan suatu objek yang lain. Keys diletakkan pada atribut yang telah ditentukan kedudukannya, agar dapat dihubungkan dengan atribut entity yang lain. Beberapa jenis key yang biasa digunakan adalah : 1. Candidate Key, yaitu himpunan yang mengidentifikasikan tiap-tiap keberadaan suatu entity. 2. Composite Key, yaitu sebuah candidate key yang terdiri dari dua atau lebih atribut. 3. Primary Key, yaitu sebuah candidate key yang dipilih secara unik untuk mengidentifikasikan tiap-tiap keberadaan suatu tipe entity. 4. Foreign Key, yaitu himpunan atribut dalam suatu relasi yang cocok dengan beberapa candidate key dari beberapa relasi. 5. Alternate Key, yaitu candidate key yang tidak dipilih menjadi primary key (Connoly&Begg, 2005, p352).
28
Primary key
Pegawai
Kantor
noPeg {PK} nama jabatan gaji totalPeg
Ruang tempat menulis t ib t
noKan {PK} alamat jalan kota kodepos telp [1…4]
Composite attribute
Multivalued
Derived attribute
Gambar 2.8 Representasi diagram entitas pegawai dan kantor beserta atribut dan primary key (Connoly&Begg, 2005, p342)
2.1.5.5 Structural Constraint Batasan-batasan
yang
menggambarkan
pembatasan
pada
relationship seperti yang ada pada ‘real word’ harus diterapkan pada tipe entity yang ikut serta pada sebuah relationship. Jenis utama dari batasan
pada
suatu
relationship
dinamakan
multiplicity
(Connoly&Begg, 2005, p356). Multiplicity adalah jumlah occurence yang mungkin terjadi pada sebuah tipe entity yang berhubungan ke sebuah occurence dari tipe entity lain pada suatu relationship (Connoly&Begg, 2005, p356). Derajat yang biasa digunakan pada suatu relationship adalah binar y relationship, yang terdiri dari :
29
1. One-to-one (1:1) Relationship Setiap relationship menggambarkan hubungan antara sebuah entity occurence pada entity yang satu dengan sebuah entity occurence pada entity lainnya yang ikut serta dalam relationship Pegawaitersebut. tipe entitas
SG5
Mengatur tipe relationship
r1
●
●
SG3 7
r2
●
●
SL21
Kantor tipe entitas
B003 ●
B005 ●
Gambar 2.9 Semantic Net menunjukkan dua occurence dari relationship pegawai mengatur kantor (Connoly, 2005, p357)
30
Setiap kantor diatur oleh satu orang pegawai
Setiap pegawai dapat mengatur nol atau satu kantor
M engatur
Pegawai noPeg
1..1
Kantor 0..1
noKan
Multiplicity Gambar 2.10 Multiplicity dari relationship one-to-one (1:1) (Connoly, 2005, p358) 2. One-to-many (1:*) Relationship Setiap relationship menggambarkan hubungan antara sebuah entity occurence pada entity yang satu atau lebih dengan sebuah entity occurence pada entity lainnya yang ikut serta dalam relationship tersebut.
31 Pegawai tipe Entitas [noPeg]
Melihat tipe relationship
Barang tipe Entitas [ B ]
r1
SG5
PG21 ●
● SG37 ●
r2
● PG36
●
● PG14 ● PG4
r3
SA9
●
●
●
Gambar 2.11 Semantic Net menunjukkan dua occurence dari relationship pegawai melihat barang (Connoly, 2005, p361)
Setiap barang dilihat oleh nol atau satu pegawai
Setiap pegawai melihat nol atau lebih barang
M elihat
Pegawai noPeg
0..1
Barang 0..*
noBar
Gambar 2.12 Multiplicity dari relationship one-to-many (1:*) (Connoly, 2005, p359)
32 3. Many-to-many (*:*) Relationship Setiap relationship menggambarkan hubungan antara satu atau lebih entity occurence pada entity yang satu dengan satu atau lebih entity occurence pada entity lainnya yang ikut serta dalam relationship tersebut. Koran tipe Entitas [namaKoran]
Mengiklankan tipe relationship
Barang tipe Entitas [noBarang]
r1 Glasgow Daily
PG21
●
● The News West
● PG36
r2
● Aberdeen Express
●
● PG14 ● PG4
r3
●
● r4 ●
Gambar 2.13 Semantic Net menunjukkan dua occurence dari relationship koran mengiklankan barang (Connoly, 2005, p361) Setiap barang diiklankan pada nol atau satu koran
Setiap Koran mengiklankan satu atau lebih barang
M engiklankan
Koran namaKoran
0..*
Barang 1..*
noBar
Gambar 2.14 Multiplicity dari relationship many-to-many (*:*) (Connoly, 2005, p360)
33 2.1.6 Normalisasi Normalisasi adalah sebuah teknik untuk menghasilkan sekumpulan relasi dengan properti yang diinginkan, yang akan memberikan kebutuhan data bagi perusahaan (Connoly & Begg, 2005, p388). Relasi adalah sebuah tabel dengan kolom dan baris. Basis data dianggap normal jika basis data tersebut tidak mengulangi data (data redundancy) atau tidak menimbulkan keanehan pada proses update, delete, atau insert. Tujuan normalisasi adalah sebagai berikut : a. M enghilangkan kumpulan relasi dari inserting, updating, dan delete dependency yang tidak diharapkan b. M engurangi kebutuhan restrukturisasi kumpulan relasi dan meningkatkan life spam program aplikasi c. M embuat model relasional yang lebih informative d. M embuat sekecil mungkin terjadinya data rangkap e. M enghindari adanya data yang tidak konsisten terutama bila dilakukan penghapusan atau menambahkan data sebagai akibat adanya data rangkap f.
M enjamin bahwa identitas tabel secara tunggal sebagai determinan semua atribut Hal penting yang perlu diperhatikan dalam proses normalisai untuk basis
data relational adalah hanya bentuk normal pertama (First normal form / 1NF) yang menjadi kritis dalam membuat relasi. Semua bentuk normal berikutnya adalah optional. Tetapi untuk menghindarkan update anomalies (relasi yang memiliki pengulangan atau redudansi data yang dapat menyebabkan masalah)
34 biasanya diajukan sampai pada tahap ketiga (3NF). Normalisasi yang umum dipakai adalah sampai dengan bentuk normal ketiga. Berikut ini adalah proses normalisasi : 1. First Normal Form (1NF) Sebelum memasuki tahap 1NF, status sebuah 1NF disebut dengan Unnormalized Form (UNF), yaitu sebuah tabel yang mengandung satu atau lebih kelompok yang berulang. First Normal Form (1NF) adalah sebuah relasi dimana persimpangan dari setiap baris dan kolom yang mengandung satu dan hanya satu nilai saja. Untuk mengubah tabel UNF ke dalam 1NF harus mengidentifikasi dan menghilangkan repeating group pada tabel. Sebuah repeating group adalah sebuah atribut atau kumpulan atribut pada suatu tabel yang terdapat lebih dari satu nilai (multiple) untuk sebuah occurrence tunggal dari key atributnya yang ditunjuk dalam tabel. Ada dua pendekatan umum untuk meghilangkan repeating group pada tabel UNF, antara lain : a. Pendekatan
pertama,
meghilangkan
repeating
group
dengan
memasukkan data yang berlebihan ke dalam kolom dan baris yang kosong. Sehingga hasil dari tabel nantinya hanya mengandung nilai atomik (tunggal). b. Pendekatan
kedua,
menghilangkan
repeating
group
dengan
menempatkan data yang berlebihan, selanjutnya dengan mengcopy atribut kuncinya yang asli dalam sebuah relasi yang dipisahkan. Kedua pendekatan ini benar. Tetapi pendekatan kedua awalnya menghasilkan relasi yang paling sedikit pada 1NF dengan mengurangi
35 redudansi. Jika menggunakan pendekatan pertama, relasi dari 1NF adalah buruk,
selanjutnya
selama
langkah
normalisasi
berikutnya
akan
menghasilkan relasi yang sama yang dihasilkan oleh pendekatan kedua. Akan tetapi hasil dari normalisasi 1NF masih menyebabkan update anomalies, sehingga diperlukan normalisasi ketahapan selanjutnya yang dinamakan bentuk normalisasi kedua (2NF). 2. Second Normal Form (2NF) Second Normal Form (2NF) adalah sebuah relasi dimana pada bentuk normal pertama dan setiap attribute yang bukan primary key adalah secara fungsional tergantung dengan primary key. Primary key adalah candidate key yang dipilih untuk mengidentifikasi tuple secara unik pada sebuah relasi. Sedangkan tuple adalah baris pada sebuah relasi. Proses normalisasi 1NF ke 2NF melibatkan penghilangan partial dependencies. Jika terdapat partial dependencies, maka atribut functionally dependent dari relasi akan dihilangkan dengan menempatkannya pada sebuah relasi baru bersama dengan copy determinant mereka. Full functional dependency adalah suatu keadaan dimana jika A dan B adalah atribut, B secara fungsional sangat tergantung pada A dan jika B secara fungsional bergantung pada A, tetapi bukan subset dari A. 3. Third Normal Form (3NF) Third Normal Form (3NF) adalah sebuah relasi dimana bentuk normal pertama dan kedua, dan dimana tidak ada atribut yang bukan primary key secara transitif bergantung pada primary key. Transitive dependency adalah
36 sebuah kondisi dimana A, B dan C adalah atribut dari relasi dimana AÆB dan BÆC, maka C adalah transitive dependency pada A melalui B. Proses normalisasi dari relasi 2NF ke 3NF melibatkan penghilangan dari ketergantungan transitif. Jika sebuah ketergantungan transitif muncul, maka dihilangkan ketergantungan transitif antara atributnya dengan menempatkan atribut tersebut ke dalam relasi baru, selanjutnya dengan sebuah salinan dari determinannya.
2.1.7 Diagram Alir Dokumen Diagram Alir Dokumen merupakan suatu diagram simbolik yang menunjukkan aliran dokumen dan urutan operasi dalam suatu sistem. Diagram alir dokumen menggambarkan aliran dari dokumen dan informasi dalam area yang bertanggung jawab dalam suatu organisasi Table 2.1 Tabel Diagram Aliran Dokumen(DAD) Gambar
Nama
Penjelasan
Penghubung pada halaman Jika dalam menggambar yang berbeda (off-page- bagan alir melebihi satu connector) halaman maka symbol ini digunakan untuk menunjukkan kemana dan bagaimana bagan alir terkait satu sama lain . Arsip Permanen
Simbol ini digunakan untuk menggambarkan arsip permanen yang merupakan tempat penyimpanan dokumen yang tidak akan diproses lagi.
Arsip Sementara
Simbol ini digunakan untuk menunjukkan tempat penyimpanan dokumen.
37 Kegiatan Manual
Simbol ini digunakan untuk menggambarkan kegiatan manual.
Keterangan, komentar
Simbol ini digunakan untuk menambahkan keterangan untuk memperjelas pesan yang disampaikan dalam bagan alir
Online computer process
Simbol ini menggambarkan pengolahan data dengan computer secara online
Catatan
Simbol ini digunakan untuk menggambarkan catatan akutansi yang digunakan untuk mencatat data yang direkam sebelumnya dalam dokumen atau formulir
Simbol Arah
Arus proses
Dokumen
Simbol ini digunakan untuk menggambarkan semua jenis dokumen yang merupakan formulir yang digunakan untuk merekam data terjadinya transaksi
Dokumen dan tembusannya
Simbol ini digunakan untuk menggambarkan dokumen asli dan tembusannya
Berbagai dokumen
Simbol ini digunakan untuk menggambarkan berbagai jenis dokumen yang digabungkan dalam satu paket.
Penghubung pada halaman Dalam menggambarkan yang sama (on-page bagan alir, arus dokumen connector) dibuat mengalir dari atas ke bawah dan dari kiri ke
38
Akhir arus dokumen
Awal arus dokumen
kanan. Karena keterbatasan ruang halaman kertas mengambar, maka diperlukan simbol penghubung yang untuk memungkinkan aliran dokumen berhenti disuatu lokasi pada halaman tertentu dan kembali berjalan dilokasi lain pada halaman yang sama. Simbol ini akan mengarahkan pembaca ke simbol penghubung yang sama nomornya.
Simbol ini menjadi penghubung halaman yang sama
2.1.8 State Transition Diagram (STD) State Transition Diagram adalah suatu diagram yang menggambarkan bagaimana suatu proses dihubungkan satu sama lain dalam waktu yang bersamaan. State Transation Diagram digambarkan dengan sebuah state yang merupakan komponen sistem yang menunjukkan bagaimana kejadiankejadian tersebut dari satu state ke state lain.(Jeffery A et al, 1996, p364) State Transition Diagram adalah sebuah perlengkapan yang digunakan untuk menggambarkan urutan dan variasi dari layar yang terjadi menurut sesi pengguna. (Whitten, Bentley, dan Dittman, 2004, p673)
39 Ada dua macam simbol yang digunakan untuk menggambarkan proses dalam State Transition Diagram, yaitu : 1. Gambar persegi panjang yang menunjukkan state dari sistem
Gambar 2.15 S imbol State dalam S TD 2. Gambar panah menunjukkan transisi antar state. Tiap panah diberi label dengan ekspresi aturan. Label yang di atas menunjukkan kejadian yang menyebabkan transisi yang terjadi. Label yang dibawah menunjukkan aksi yang terjadi akibat kejadian tadi.
Gambar 2.16 S imbol Transisi dalam S TD
Contoh STD : Verifikasi
Login Username dan Password
Data Valid M enu Utama Data Tidak Valid Gambar 2.17 Contoh S TD
40 2.2 Teori Pendukung 2.2.1 Internet Internet merupakan jaringan global komputer dunia, besar dan sangat luas sekali dimana setiap komputer saling terhubung satu sama lainnya dari negara ke negara lainnya di seluruh dunia dan berisi berbagai macam informasi, mulai dari text, gambar, audio, video, dan lainnya. Internet itu sendiri berasal dari kata Interconnection Networking, yang berarti hubungan dari banyak jaringan komputer dengan berbagai tipe dan jenis, dengan menggunakan tipe komunikasi seperti telepon, satelit, dan lainnya. Dalam mengatur integrasi dan komunikasi jaringan komputer ini menggunakan protokol yaitu TCP/IP. TCP (Transmission Control Protocol) bertugas untuk memastikan bahwa semua hubungan bekerja dengan benar, sedangkan IP (Internet Protocol) yang mentransmisikan data dari satu komputer ke komputer lain. TPC/IP secara umum berfungsi memilih rute terbaik transmisi data, memilih rute alternatif jika suatu rute tidak dapat digunakan, mengatur dan mengirimkan paket-paket pengiriman data. Internet memberikan banyak sekali manfaat, ada yang bisa memberikan manfaat baik dan buruk. Baik bila digunakan untuk pembelajaran informasi dan buruk bila digunakan untuk hal yang berbau pornografi, informasi kekerasan, dan lain-lainnya yang negatif. Internet ini memungkinkan pengguna komputer di seluruh dunia untuk saling berkomunikasi dan berbagi informasi dengan cara saling mengirimkan email, menghubungkan komputer satu ke ke komputer yang lain, mengirim
41 dan menerima file dalam bentuk text, audio, video, membahas topik tertentu pada newsgroup, website social networking dan lain-lain.
2.2.2 SQL M enurut Onno W. Purbo SQL (Strucutured Query Language) adalah bahasa standar yang digunakan untuk mengakses server database. Dengan menggunakan SQL, proses akses database menjadi lebih user-friendly (lebih dapat dimengerti oleh manusia karena mirip dengan bahasa inggris standar). (Buku Pintar Internet M embangun Web E-commerce, 2000, p84) SQL adalah suatu bahasa computer yang mengikuti standard ANSI (American National Standard Institute), yaitu sebuah bahasa standar yang digunakan untuk mengakses dan melakukan manipulasi suatu sistem basis data. Statement dalam SQL dapat digunakan untuk mengakses data atau mengupdate data pada suatu basis data. (Diambil dari web “Seputar internet dan tekhnologi”, 2008) SQL adalah sebuah bahasa yang digunakan dalam setiap hubungan untuk mengubah Input menjadi Output yang dicari.(Connoly&Begg, 2005, p113) Komponen yang ada dalam SQL adalah : a. DDL (Data Definition Language) DDL adalah sebuah bahasa yang memperbolehkan seorang DBA atau user untuk mendeskripsikan dan member nama pada entity, attribute dan relationships yang dibutuhkan oleh aplikasi, bersama dengan associated integrity dan security.
42 b. DML(Data Manipulation Language) Data manupulation language adalah bahasa pemrograman yang memungkinkan pengguna untuk mengakses atau memanipulasi data yang telah disusun oleh data model. (Abraham Silberschatz, 2006, p9) Dua tipe data manipulation language adalah : 1. Procedural DMLs Pengguna harus menspesifikasikan data apa yang dibutuhkan dan bagaimana cara untuk mendapatkan data tersebut. 2. Declarative DMLs Pengguna dapat menspesifikasikan data apa yang dibutuhkan tanpa menspesifikasikan bagaimana cara untuk mendapatkan data tersebut.
2.2.3 MySQL MySQL adalah sebuah perangkat lunak sistem manajemen basis data SQL atau DBM S yang multithread dan multi-user. (Wikipedia, 2008)
2.2.4 PHP (Hypertext Pre-processor) PHP merupakan bahasa berbentuk script yang ditempatkan dalam server dan diproses di server. Hasilnya kemudian dikirim ke client, tempat pengguna menggunakan browser. Secara khusus, PHP dirancang untuk membentuk web dinamis. Artinya, ia dapat membentuk suatu tampilan berdasarkan permintaan terkini. M isalnya, bisa menampilkan isi basis data ke halaman web. Pada prinsipnya, PHP mempunyai fungsi yang sama dengan script – script seperti
43 ASP (Active Server Pages ), Cold Fusion, ataupun Pelr. (Abdul Kadir, 2002, p1)
2.2.5 Fourth Generation Language (4GL) 4GL adalah pembaharuan dari Third Generation Language (3GL), inti dari 4GL adalah mempersingkat dan meminimalkan perintah dalam pemrograman. Sebuah operasi yang membutuhkan ratusan baris perintah dalam 3GL, dalam 4GL jumlah baris perintah menjadi lebih sedikit. Contoh dari 3GL adalah COBOL, contoh dari 4GL adalah SQL. 4GL meliputi : 1. Presentation Languages, seperti query language dan report generators. 2. Speciality Languages, seperti spreadsheets dan database languages. 3. Application
Generators, yang
mendefinisikan
insert,
update
dan
mengambil data dari baris data untuk dibangun menjadi aplikasi 4. Very high-level languages yang digunakan untuk menghasilkan kode-kode aplikasi (Connolo&Begg, 2005, p42).
2.2.6 E-Commerce M enurut Esprit yang dikutip oleh Whiteley (2000, p3) e-commerce adalah konsep umum setiap bentuk dari transaksi bisnis atau pertukaran informasi yang dilaksanakan dengan menggunakan teknologi komunikasi dan informasi. E-commerce digunakan
antar perusahaan,
antara perusahaan
dengan
konsumen mereka, atau antara perusahaan dengan administrasi publik. E-
44 commerce terdiri dari perdagangan produk, jasa, dan barang-barang elektronik. Pada dasarnya e-commerce adalah melakukan bisnis online. Dalam bentuknya yang paling jelas, e-commerce menjual produk kepada konsumen secara online, tetapi faktanya jenis bisnis apapun yang dilakukan secara elektronik adalah e-commerce. Sederhananya, e-commerce adalah membuat, mengelola, dan meluaskan hubungan komersial secara online. (Kienan, 2001, p4)
2.2.6.1 Kategori E-Commerce E-commerce dapat dibagi menjadi 3 kategori (Whiteley, 2000, p4), yaitu : 1. Electronic Markets Electronic markets merupakan penggunaan teknologi informas i dan komunikasi untuk menampilkan berbagai penawaran yang tersedia
dalam
membandingkan
segmen
pasar
harga (dan
sehingga
atribut
lainnya)
pembeli
dapat
dari berbagai
penawaran yang ada dan membuat keputusan. Contoh : sistem pemesanan tiket pesawat terbang. 2. EDI (Electronics Data Interchange) EDI menyediakan sistem standar untuk pengkodean transaksi perdagangan sehingga mereka dapat dikomunikasikan secara langsung dari satu sistem komputer ke sistem komputer lainnya tanpa membutuhkan perintah tertulis, tagihan, penundaan, dan
45 kesalahan dalam penanganan media kertas. EDI digunakan oleh organisasi yang memakai transaksi biasa dalam jumlah besar. Salah satu sektor dimana EDI digunakan secara ekstensif adalah pertukaran di dalam supermarket yang menggunakan EDI untuk bertransaksi dengan supplier mereka. 3. Internet Commerce Teknologi informasi dan komunikasi juga dapat digunakan untuk periklanan dan membuat satu kali penjualan dalam daerah produk dan jasa yang besar. E-Commerce jenis ini dilambangkan dengan pemakaian internet secara komersial. Intenet dapat digunakan untuk pembelian buku yang dapat dikirimkan melalui pos atau pemesanan tiket yang dapat dilakukan oleh klien kapan saja mereka ingin. Hal ini dapat ditandai dengan internet bukan sebagai satu-satunya teknologi yang digunakan untuk pelayanan jenis ini dan ini bukan satu-satunya kegunaan internet dalam e-commerce.
2.2.7 Unsur Dalam Perancangan Website 2.2.7.1 HTTP (Hypertext Tran sfer Protocol) HTTP (Hypertext Transfer Protocol) merupakan protokol yang digunakan untuk mentransfer data antara web server ke web browser. Protokol ini mentransfer dokumen web yanng ditulis atau berformat HTM L (Hypertext Markup Language). Dikatakan Markup Language karena HTM L berfungsi untuk “memperindah” file text biasa untuk
46 ditampilkan pada program web browser. (Buku Pintar Internet M embangun Web E-commerce, 2000, p2)
2.2.7.2 HTML (Hypertext Markup Language) M enurut Efraim, Rainer & Potter (2003, p112) HTM L (Hypertext Markup Language) merupakan bahasa standar yang digunakan untuk membuat dan mengenali hypertext document pada world wide web. HTM L memberikan pengguna untuk mengatur elemen-elemen visual seperti huruf, ukuran huruf dan spasi paragraf tanpa mengubah informasi asli. Hypertext document merupakan kombinasi dari node, link dan indeks pendukung untuk topik tertentu.
2.2.7.3 WWW (World Wide Web) M enurut Efraim, Rainer & Potter (2003, p214) web adalah sebuah sistem yang secara umum menerima standar untuk menyimpan, mengambil, mengubah dan menampilkan informasi melalui arsitektur client dan server. Web menangani semua tipe digital, meliputi teks, hypermedia, grafik, suara.
2.2.7.4 Email Email adalah singkatan dari Electronic Mail atau dalam bahas a Indonesia adalah surat elektronik. M elalui Email kita dapat mengirim surat elektronik baik berupa teks maupun gabungan dengan gambar, yang dikirimkan dari suatu alamat email ke alamat email lainnya di
47 jaringan internet. Seperti layaknya surat biasa pada umumnya, email berfungsi untuk mengirimkan surat kepada orang lain. Perbedaan surat biasa dengan email adalah email sudah tidak lagi membutuhkan kertas sebagai media untuk menuliskan pesan, media yang digunakan adalah berupa data digital yang dikirimkan melalui internet.
2.2.7.5 URL (Uniform Resource Locators) URL digunakan dengan software browser untuk menempatkan dan mengakses informasi di world wide web. URL terbagi menjadi beberapa
bagian
atau
dikenal
dengan
istilah
http://
domain/path/filename, atau disebut pula metode akses - lokasi komputer - lokasi file. Di antara bagian tersebut adalah: a. Bagian pertama URL dikenal sebagai protokol atau disebut pula http:// yang merupakan singkatan dari Hypertext Transfer Protocol. b. Bagian kedua dari URL dikenal sebagai nama domain, domain mewakili nama server yang sedang berhubungan dengan internet. c. Bagian ketiga dari URL disebut dengan directory path yang merupakan area khusus dimana item-item berada. d. Bagian keempat dari URL disebut nama file dokumen, ini menentukan file khusus yang sedang diakses. Biasanya adalah sebuah file HTM L, tapi mungkin juga gambar, suara atau file lainnya.
48 2.2.7.6 Web Browser Web client adalah komputer yang tergabung dalam jaringan atau internet yang meminta informasi. Untuk dapat mengakses web server, web client menggunakan aplikasi yang disebut web browser. Web browser meminta dan menerima data dari web server melalui suatu protokol yang disebut http (hypertext transfer protocol). Protokol ini bertugas untuk mengirimkan perintah dari web browser ke web server serta mengirimkan file atau data dari web server ke web browser. File yang dikirim dalam layanan web ini berekstensi *.htm atau *.html. HTM L merupakan singkatan dari hypertext markup language, yaitu satu bahasa yang digunakan untuk mendefinisikan susunan informasi dalam file hypertext. Hypertext sendiri adalah suatu struktur penyampaian informasi dimana satu atau beberapa kata pada suatu file dapat di-link untuk mengeluarkan file baru yang biasanya berisi informasi detail tentang kata tersebut .
2.2.7.7 Web S erver Web Server adalah komputer yang tergabung dalam jaringan atau internet yang memberikan informasi.
49 2.2.8 Interaksi Manusia dan Komputer M enurut Shneiderman (1998, p74-75) dalam perancangan sebuah interface terdapat aturan-aturan yang telah dikenal dengan Eight Golden Rules of Interface Design (delapan aturan emas). 1. Berusaha keras untuk konsisten (strive for consistency). Konsisten ini adalah konsisten dalam penggunaan bentuk dan ukuran font, pemberian warna pada latar belakang dan tulisan, pembuatan layout. 2. M emungkinkan pengguna menggunakan shortcut sesering mungkin (enable frequent users to use shortcuts). Pengurangan jumlah interaksi melalui fasilitas shortcuts memberikan manfaat bagi pengguna dalam memberikan waktu respon dan waktu tampilan yang cepat. 3. M emberikan umpan balik yang informatif (offer informative feedback). Untuk setiap tindakan yang dilakukan oleh user, harus diberikan umpan balik (feed back). Umpan balik dapat berupa tampilan ataupun suara sehingga
pengguna
mengetahui
bahwa
perangkat
lunak
tersebut
memberikan respon. 4. M erancang dialog untuk menghasilkan keadaan akhir (design dialogs to yield closure). Urutan dari tindakan harus diatur ke dalam suatu kelompok yang memiliki bagian awal, bagian tengah, dan bagian akhir. Umpan balik yang informatif dalam penyelesaian tindakan-tindakan kepuasan bagi pemakai.
akan memberikan
50 5. M emberikan penanganan kesalahan yang sederhana (offer error prevention and simple error handling). Dalam mendesain, sedapat mungkin diberikan error prevention, contohnya, pada menu untuk memasukkan nama, user tidak diperbolehkan untuk memasukkan angka. Jika user melakukan kesalahan, sistem harus dapat mendeteksi kesalahan tersebut dan menampilkan kesalahan si pengguna dan memberikan contoh penggunaan yang benar secara sederhana. 6. M engizinkan pembalikan aksi dengan mudah (permit easy reversal of actions). Dalam melakukan desain, sebisa mungkin diberikan undo. Hal ini akan memudahkan user jika melakukan kesalahan yang tidak disengaja ketika sedang mengerjakan sesuatu. 7. M enyediakan kendali internal bagi user (support internal locus of control). Sistem harus dirancang supaya user merasa menguasai sistem dan sistem akan memberi respon atas tindakan yang diberikan. 8. M engurangi muatan memory jangka pendek (reduce short-term memory load). M anusia memerlukan
mempunyai tampilan
keterbatasan
sederhana,
dalam
tampilan
mengingat
sehingga
halaman-halaman
digabungkan, dan pergerakan windows dapat dikurangi.
dapat
51 2.2.9 Pemesanan Pemesanan merupakan suatu set rekursif dari kegiatan bisnis dan operasi pemrosesan informasi terkait yang dihubungkan dengan permintaan barang dari konsumen.
2.2.10 Pembelian Pembelian artinya memperoleh barang dan jasa (Render, 2001, p414). Tujuan dari pembelian, yaitu : 1. M embantu mengidentifikasi barang dan jasa yang dapat diperoleh secara eksternal. 2. M engembangkan, mengevaluasi dan menentukan pemasok, harga dan pengiriman yang terbaik bagi barang dan jasa tersebut.
S trategi Dalam Pembelian Terdapat lima strategi dalam pembelian (Render, 2001, p416), yaitu : 1. Negosiasi dengan banyak pemasok dan membandingkan satu pemasok dengan yang lainnya, biasanya pesanan jatuh kepada penawar yang termurah. 2. M engembangkan hubungan jangka pendek, bekerjasama dengan beberapa pemasok yang akan bekerjasama dengan pembeli untuk memuaskan konsumen akhir. 3. Integrasi vertikal. M aksudnya adalah pengembangan kemampuan produksi barang atau jasa yang sebelumnya atau dengan benar-benar membeli pemasok atau distributor. Intergasi vertikal dapat mengambil bentuk
52 integrasi ke depan atau ke belakang. Yang dimaksud dengan integrasi ke depan adalah mengusulkan perusahaan untuk membuat barang jadi, sedangkan yang dimaksud integrasi ke belakang adalah mengusulkan perusahaan pemasok membeli para pemasoknya. 4. Kombinasi beberapa pemasok dan integral vertikal. 5. M engembangkan
perusahaan-perusahaan
maya
yang
menggunakan
pemasok dengan dasar “pada saat dibutuhkan”.
Dokumen Dalam Sistem Pembelian Dokumen yang digunakan pada sistem pembelian (M ulyadi, 2001, p303), yaitu : 1. Surat permintaan pembelian Formulir ini diisi oleh fungsi gudang atau fungsi pemakai barang untuk meminta fungsi pembelian barang melakukan pembelian barang dengan jenis, jumlah dan mutu seperti yang disebutkan dalam surat tersebut. Biasanya terdiri dari dua lembar untuk setiap permintaan, satu lembar untuk fungsi pembelian dan tembusannya untuk arsip fungsi yang meminta barang. 2. Surat permintaan penawaran harga Dokumen ini digunakan untuk meminta penawaran harga bagi barang yang pengadaannya tidak bersifat berulangkali terjadi yang menyangkut jumlah rupiah pembelian yang besar.
53 3. Surat order pembelian Dokumen ini digunakan untuk memesan barang kepada pemasok yang sudah dipilih. 4. Laporan permintaan barang Dokumen ini dibuat oleh fungsi penerimaan untuk menunjukkan bahwa barang yang diterima dari pemasok telah memenuhi jenis, spesifikasi dan kuantitas seperti yang tercantum dalam surat order pembelian. 5. Surat perubahan order pembelian Digunakan bila terjadi perubahan terhadap isi surat order pembelian yang sebelumnya telah diterbitkan. Perubahan tersebut dapat berupa perubahan kuantitas, jadwal penyerahan barang, spesifikasi, penggantian atau hal lain yang bersangkutan dengan perubahan desain atau bisnis. 6. Bukti kas keluar Dokumen ini dibuat oleh fungsi akuntansi untuk dasar pencatatan transaksi pembelian. Dokumen ini juga berfungsi sebagai perintah pengeluaran kas untuk pembayaran hutang kepada pemasok dan yang sekaligus berfungsi sebagai surat pemberitahuan kepada kreditur mengenai maksud pembayaran.
54 2.2.11 Penjualan Kegiatan penjualan terdiri dari transaksi penjualan barang atau jasa baik secara kredit maupun secara tunai (M ulyadi, 2001, p202). Transaksi penjualan kredit terjadi jika order dari konsumen telah dipenuhi dengan pengiriman barang atau penyerahan jasa. Untuk jangka waktu tertentu, perusahaan memiliki piutang kepada konsumennya. Transaksi penjualan tunai terjadi jika barang atau jasa baru diserahkan oleh perusahaan kepada pembeli jika perusahaan telah menerima kas dari pembeli.
Fungsi Penjualan Fungsi-fungsi yang terkait dengan sistem penjualan (M ulyadi, 2001, p211) adalah : 1. Fungsi gudang Fungsi ini bertanggung jawab untuk menyimpan dan menyiapkan barang yang dipesan oleh konsumen dan mengirimkan barang tersebut ke bagian pengiriman. 2. Fungsi penjualan Fungsi ini bertanggung jawab untuk menerima surat order dari pembeli, mengedit order dari konsumen untuk menambahkan informasi yang belum ada pada surat order tersebut, meminta otorisasi kredit, menentukan tanggal pengiriman dari gudang mana barang yang akan dikirim dan mengisi surat order pengiriman.
55 3. Fungsi pengiriman Fungsi ini bertanggung jawab untuk menyerahkan barang ke konsumen berdasarkan surat order pengiriman yang diterima dari fungsi penjualan. 4. Fungsi penagihan Fungsi ini bertanggung jawab untuk membuat dan mengirimkan faktur penjualan kepada konsumen, serta menyediakan copy faktur bagi kepentingan pencatatan transaksi penjualan oleh fungsi akuntansi. 5. Fungsi akuntansi Fungsi ini bertanggung jawab untuk mencatat piutang yang timbul dari transaksi penjualan kredit dan membuat serta mengirimkan pernyataan piutang kepada debitur, serta membuat laporan penjualan.
Dokumen Pada Sistem Penjualan Dokumen-dokumen yang digunakan dalam sistem penjualan adalah sebagai berikut (M ulyadi, 2001, p214): 1. Surat order pengiriman dan tembusannya 2. Faktur dan tembusannya 3. Rekapitulasi harga pokok penjualan 4. Bukti memorial