BAB 2 Landasan Teori
2.1.
Teori Umum Dalam merancang suatu sistem, dibutuhkan teori-teori umum sebagai
landasan pengetahuan. Adanya teori-teori umum yang berkaitan dengan sistem infomasi akan dijelaskan sebagai berikut. 2.1.1. Data Menurut Connolly and Begg (2010, p70), data adalah bagian yang paling penting dari komponen sebuah DBMS. Data bertindak sebagai jembatan antara komponen mesindan komponen manusia. Dari definisi diatas, dapat disimpulkan bahwa data adalah bagian terpenting dari sebuah DBMS yang merupakan jembatan antara komponen mesin dan komponen manusia. 2.1.2. Sistem Menurut O’brien (2010, p26) Sistem merupakan sekelompok komponenkomponen yang saling berhubungan, bekerja bersama-sama untuk mencapai suatu tujuan bersama dengan menerima input serta menghasilkan output dalam proses transformasi yang teratur. 2.1.3. Informasi Menurut O’brien (2010, p34), Informasi merupakan data dalam konteks yang telah dikonversi bermakna dan berguna bagi pengguna akhir tertentu. Menurut Williams dan Sawyer(2011, p25), Informasi merupakan data yang telah dirangkum atau dimanipulasi dalam bentuk lain untuk tujuan pengambilan keputusan.
9
10
Dari definisi para ahli diatas, dapat disimpulkan bahwa informasi adalah merupakan data yang telah diolah agar berguna dan bermakna bagi pengguna untuk tujuan pengambilan keputusan. 2.1.4. Database Menurut Connoly dan Begg (2010,p65),Database adalah kumpulan data yang saling berhubungan secara logis serta deskripsi dari data tersebut, yang dirancang untuk memenuhi kebutuhan informasi organisasi. Menurut O’brien (2010, p173),Database merupakan suatu kumpulan terpadu dari elemen data yang logis dan saling berhubungan. Dari definisi para ahli diatas, dapat disimpulkan bahwa database adalah kumpulan elemen data yang saling berelasi dan terintegrasi yang dirancang untuk memenuhi kebutuhan informasi perusahaan. 2.1.4.1. Database management system (DBMS) Menurut Connolly & Begg (2010, p.66), DBMS adalah sebuah sistem perangkat lunak yang memungkinkan pengguna untuk dapat mendefinisikan, menciptakan, memelihara, dan mengontrol akses ke basis data. DBMS dapat berinteraksi dengan pengguna program aplikasi dan basis data. Secara khusus,fasilitas-fasilitas yang disediakan oleh DBMS yaitu: •
DBMS memungkinkan pengguna untuk dapat mendefinisikan
basis
data,
yang
biasanya
menggunakan DDL (Data Definition Language). •
DBMS memungkinkan pengguna untuk dapat memasukkan (insert), memperbaharui (update), dan memperoleh kembali (retrieve) data dari basis data, yang biasanya menggunakan DML (Data Manipulation Language).
•
DBMS menyediakan akses terkontrol ke basis data, seperti sistem keamanan (security system), sistem integritas (integrity system), dan katalog yang dapat diakses oleh pengguna (user accessible
11
catalog). Dengan ada-nya database management system
maka
akan
dapat
memelihara
dan
mengontrol basis data yang ada di dalam perusahaan
tersebut.
Contoh
dari
database
management system adalah DB II, FoxPro, SQL dan ORACLE. 2.1.4.1.1 Kelebihan dan Kekurangan DBMS Menurut Connolly (2010, p77-81) terdapat kelebihan dan kekurangan dalam menggunakan DBMS, yaitu : Kelebihan DBMS : •
Kontrol terhadap redudansi data Database berusaha untuk menghilangkan pengulangan dengan mengintegrasikan dokumen sehingga berbagaisalinan dari data yang sama tidak tersimpan.Bagaimanapun juga pendekatan ini tidak
menghilangkan
secara
menyeluruh,
tetapi
mengendalikan jumlah pengulangan dalam database. •
Konsistensi data Dengan menghilangkan atau mengendalikan redudansi, kita telah mengurangi resiko ketidak konsistenan yang terjadi. Jika item data disimpan hanya sekali di dalam database, maka berbagai update bagi nilai data tersebut harus dibuat hanya sekali dan nilai baru tersebut harus tersedia dengan segera kepada semua pengguna.Jika item data disimpan lebih dari sekali, sistem dapat memastikan bahwa semua salinan dari item tersebut tetap konsisten.
•
Informasi yang lebih banyak dari beberapa data yang sama Dengan data operasional yang terintegrasi, memungkikan bagi organisasi untuk mendapatkan informasi tambahan dari data yang sama.
•
Sharing data
12
Biasanya berkas dimiliki oleh seseorang atau departemen yang menggunakannya, tetapi database dimiliki oleh seluruh organisasi dan dapat digunakan oleh pengguna yang dipercaya. •
Meningkatkan integritas data Integritas database mengacu pada validitas dan konsistensi data yang disimpan. Integritas biasanya digambarkan dalam istilah batasan yang berupa aturan konsisten yang tidak boleh dilanggar oleh database. Integrasi memungkinkan DBA untuk menjelaskan dan memungkinkan DBMS untuk membuat batasan integritas.
•
Meningkatkan keamanan data Keamanan database adalah melindungi sebuah database dari pengguna yang tak berotoritas.Hal ini dapat dilakukan dengan menggunakan
format
username
dan
password
untuk
mengidentifikasi orang yang berotoritas untuk menggunakan database.Akses penguna yang berotoritas pada database mungkin dibatasi oleh jenis operasi seperti pengambilan, insert, update dan delete data. •
Penetapan standarisasi Integrasi memungkinkan DBA untuk mendefinisikan dan membuat standard yang diperlukan. Standar ini termasuk standard departemen, organisasi, nasional,atau internasional dalam hal format data, untuk memfasilitasi pertukaran data antara sistem, ketetapan penamaan, standar dokumentasi, prosedur update danaturan akses.
•
Ekonomis Dengan menyatukan semua data operasional organisasi ke dalam satu database dan pembuatan sekelompok aplikasi yang bekerja pada satu sumber data dapat mengurangi biaya. Penyatuan biaya pengembangan dan pemeliharaan sistem pada setiap departemen akan menghasilkan total biaya yang lebih rendah. Sehingga biaya lainnya dapat digunakan untuk
13
membeli konfigurasi sisten yang sesuai bagi kebutuhan organisasi. •
Menyeimbangkan konflik kebutuhan Setiap pengguna mempunyai kebutuhan yang mungkin bertentangan dengan kebutuhan pengguna lain. Sejak database dikendalikan oleh DBA. DBA dapat membuat keputusan berkaitan dengan perancangan dan penggunaan operasional database yang menyediakan penggunaan terbaik dari sumber daya bagi keseluruhan organisasi.
•
Meningkatkan akses dan respon data Dengan
pengintegrasian
data
yang
melintasi
batasan
departemen dapat secara langsung diakses pada pengguna akhir. Hal ini dapat menyediakan sebuah sistem dengan lebih banyak fungsinya seperti fungsi untuk menyediakan layanan yang lebih baik pada pengguna akhir atau iklan organisasi. Banyak
DBMS
menyediakan
query
language
yang
memungkinkan 25 pengguna untuk menanyakan pertanyaan ad hoc dan memperoleh informasi yang diperlukan dengan segera pada terminal mereka, tanpa memerlukan programmer menuliskan beberapa software untuk mengubah informasi tersebut dari database. •
Meningkatkan produktifitas DBMS menawarkan banyak fasilitas yang memudahkan dalam menyusun aplikasi sehingga waktu pengembangan aplikasi dapat diperpendek.Meningkatkan pemeliharaan melalui data yang independen DBMS menyediakan pendekatan yang membuat perubahan dalam data tidak membuat program harus diubah.
•
Meningkatkan konkurensi Dalam file-based system, jika lebih dari dua pengguna diijinkan untuk mengakses suatu file yang sama secara bersamaan, dapat menganggu akses yang akhirnya akan terjadi kehilangan informasi, bahkan hilangnya integritas.
14
•
Meningkatkan pelayanan Back up dan Recovery Meningkatkan pelayanan Back up dan Recovery DBMS melindungi pengguna dari efek kegagalan sistem.Jika terjadi kegagalan, DBMS dapat mengembalikan data sebagaimana kondisi saat sebelum terjadi kegagalan melalui fasilitas backup dan recovery database.
Menurut Connolly dan Begg (2010, p80-81), kerugian DBMS: •
Kompleksitas DBMS
memiliki
kompleksitas
tinggi
demi
menjamin
fungsionalitas yang baik. •
Ukuran DBMS membutuhkan media penyimpanan yang sangat besar agar DBMS bisa berjalan dengan efisien, hal ini disebabkan kompleksnya fungsionalitas DBMS itu sendiri.
•
Biaya untuk DBMS Biaya yang dibutuhkan dalam menjalankan DBMS bervariasi tergantung dari kebutuhan, lingkungan dan fungsionalitas yang diberikan.
•
Biaya tambahan perangkat keras Tempat penyimpanan yang besar untuk DBMS dan database mungkin memerlukan tambahan biaya untuk membeli tempat penyimpanan yang kosong lebih besar. Hal ini akan mempengaruhi biaya yang dibutuhkan dalam menjalankan DBMS.
•
Meningkatkan biaya untuk konversi data Dalam menerakan DBMS, aplikasi yang telah berjalan kemungkinan tidak kompatibel dengan DBMS. Karena hal ini dibutuhkan biaya tambahan untuk mengubah aplikasi yang telah ada ke bentuk yang kompatibel dengan DBMS. Disamping itu dibutuhkan pula biaya untuk pelatihan karyawan agar dapat menggunakan DBMS.
15
•
Kinerja DBMS akan menyebabkan beberapa aplikasi tidak dapat bekerja secepat semestinya. Hal ini dikarenakan DBMS diciptakan
untuk
melayani
berbagai
aplikasi
sehingga
kemungkinan besar akan ada hambatan dalam kinerja aplikasi yang menggunakan DBMS. •
Dampak kegagalan yang lebih besar Dalam penerapan DBMS, akan terjadi sentralisasi sistem pada DBMS. Hal ini berarti system sangat bergantung pada DBMS dan semua bagian system terkait satu sama lain sehingga jika ada kegagalan pada satu bagian sistem, kegiatan operasional akan terhenti.
2.1.5. Database language Sebuah data sublanguage terdiri dari dua bagian, yaitu DDL (Data Definition Language) dan DML (Data Manipulation Language). DDL digunakan untuk menspesifikasikan skema basis data, sedangkan DML digunakan untuk membaca dan memperbaharui basis data. 2.1.5.1. DDL (Data definition language) Menurut Connolly & Begg (2010, p.92), DDL merupakan bahasa yang memungkinkan DBA (Database Administrator) atau pengguna untuk menciptakan dan memberi nama suatu entitas, atribut, serta hubungan-hubungan yang dibutuhkan untuk aplikasi, berikut dengan batasan-batasan keamanan dan integritasnya. DDL juga dapat digunakan untuk mendefinisikan dan memodifikasi skema basis data, tetapi tidak dapat digunakan untuk memanipulasi data. 2.1.5.2.DML (Data manipulation language) Menurut Connolly & Begg (2010, p.92), DML merupakan bahasa yang menyediakan sekumpulan operasi untuk mendukung operasi dasar manipulasi data di dalam basis data. Pada umumnya operasi manipulasi data mencakup : •
Memasukkan data baru ke dalam basis data.
•
Memodifikasi data yang telah disimpan di dalam basis data.
16
•
Mencari data yang terdapat di dalam basis data.
•
Menghapus data dari basis data.
2.1.6. Pengelolaan Siklus Sistem Database Menurut Connolly(2010, p313), Sistem database merupakan komponen yang paling mendasar yang harus dipenuhi pada organisasi yang memiliki sistem informasi yang besar dan berdasarkan kebutuhan organisasi tersebut.
Gambar 2.1 Pengelolaan Siklus Sistem Database 2.1.6.1 Tahap pengelolaan siklus sistem database •
Database Planning Perencanaan database merupakan suatu aktifitas yang memungkinkan tahapan dari pengelolaan siklus sistem database dapat terelasisasi secara efisien dan efektif. Perencanaan database harus diintegrasikan dengan keseluruhan istrategi sistem informasi, yaitu :
17
I. Mengidentifikasi rencana dan tujuan perusahaan termasuksistem informasi yang dibutuhkan. II. Mengidentifikasi sistem informasi yang telah ada untuk menetapkan kelebihan dan kekurangan yang ada di sistem informasi tersebut. III. Menaksirkan kesempatan IT yang memungkinkan dapat memberikan keuntungan yang kompetitif. •
Mendefinisikan sistem Menetapkan batasan dan cakupan dari sistem database dan sudutpandang pengguna yang diutamakan. Sebelum merancang sistem database, hal ini penting kita pertama kali harus mengidentifikasi cakupan sistem kita harus melakukan investigasi dan bagaimana interface dengan bagian lain dari sistem informasi dalam organisasi tersebut. Sudut pandang pengguna mendefinisikan apa yang diwajibkan dari suatu aplikasi database dari perspektif aturan kerja seperti Manager dan Supervisor. Aplikasi database dapat memiliki satu atau lebih sudut pandang pengguna.Identifikasi sudut pandat pengguna untuk membantu memastikan bahwa tidak ada user utama dari suatu database yang terlupakan ketika pembuatan aplikasi. Sudut pandang pengguna juga membantu dalam pengembangan aplikasi database yang kompleks yang memungkinkan permintaan-permintaan dipecah kedalam bagian yang lebih sederhana.
•
Pengumpulan data dan analisis Proses mengumpulkan dan menganalisa informasi tentang bagiandari organisasi yang didukung oleh sistem database, dan menggunakan informasi tersebut untuk mengidentifikasi kebutuhan untuk sistem yang baru. Banyak teknik yang dapat digunakan untuk mendapatkan informasi tersebut, seperti teknik Fact-Finding.Informasi yang dikumpulkan untuk setiap sudut pandang pengguna utama meliputi: Deskripsi data yang digunakan Mengetahui secara detil bagaimana data digunakan Menambahkan beberapa kebutuhan tambahan untuk sistem database yang baru
•
Mendesain Database
18
Desain database merupakan proses menciptakan perancangan yang akan mendukung tujuan perusahaan untuk kebutuhan sistem database.Terdapat empat pendekatan dalam perancangan database, yaitu : 1) Bottom-up Pendekatan ini dimulai dari tingkat paling dasar dari atribut(yaitu properti dari entitas dan hubungan relasional)dimana melalui analisis dan gabungan antar atribut,dikelompokkan ke dalam relasi yang mempresentasikantipe entitas dan hubungan antar entitas. Pendekatan ini lebih cocok untuk perancangan database yang sederhana dengan jumlah atribut yang relative kecil. 2) Top-down Pendekatan ini dimulai dari perkembangan model data yang terdiri dari beberapa entitas tingkat tinggi dan hubungannya. 3) Inside-out Hampir sama dengan bottom-up tetapi berbeda pada saat identifikasi himpunan entitas utama dan kemudian menyebar untuk mempertimbangkan entitas lain,hubungan, dan himpunan atribut identifikasi pertama. 4) Mixed-strategy Strategi ini menggunakan kedua pendekatan terlebih dahulu yaitu bottom-up dan top-down untuk bermacam-macam bagian model sebelum digabungkan dengan semuanya. Tiga fase mendesain database : 1. Conceptual database design Suatu proses membangun model dari data yang digunakan didalam perusahaan, independen dari keseluruhan aspek fisik. 2. Logical database deisgn Suatu proses membangun model dari data yang digunakan perusahaan berdasarkan model data tertentu, tetapi independen terhadap DBMS dan aspek fisik lainnya. 3. Physical database design Proses yang menghasilkan deskripsi implementasi dari database pada penyimpanan sekunder. Menjelaskan dasar relasi, organisasi
19
file, penggunaan index untuk mencapai efisiensi akses ke data, dan beberapa batasan integritas danpengukuran keamanan database. • DBMS Selection Pemilihan produk DBMS yang tepat untuk mendukung sistem database.Tahapan-tahapan utama untuk memilih produk DBMS: 1. Mendefinisikasi kerangka acuan penelitian 2. Membuat dua atau tiga list produk yang akan digunakan 3. Evalusasi produk yang akan digunakan 4. Merekomendasikan pilihan dan buat laporannya • Application Design Mendesain interface antar pengguna dan program aplikasi yang akan digunakan untuk memproses ke dalam database. Desain database dan aplikasi merupakan aktifitas yang salingberhubungan meliputi dua aktifitas penting, yaitu : 1) Transaction Design Transaksi merupakan aksi atau serangkaian aksi yang dilakukan oleh user tunggal atau program aplikasi, yangmengakses atau merubah isi dari database. Tujuan dari desain transaksi adalah untuk menetapkan dan keterangan karakteristik high-level dari suatu transaksi yang dibutuhkan pada database, diantaranya : Data yang digunakan oleh transaksi Karakteristik fungsional suatu transaksi Hasil Transaksi Keuntungan bagi user Tingkat kegunaan sesuai yang diharapkan Terdapat tiga tipe transaksi, yaitu : o Retrieval
Transaction,
yang
digunakan
untukp
emanggilan data untuk ditampilkan di layar atau menghasilkan suatu laporan. o Update transaction, yang digunakan untuk menambah data, menghapus, atau memodifikasi data yang sudah ada didalam database.
20
o Mixed
transaction,
transaksi
yang
melibatkan
pemanggilan dan perubahan data.
2) User Interface Design Guidelines Sebelum mengimplementasikan form atau report, hal ini penting pada saat pertama kali mendesain layout, ada beberapa aturan pokok dalam pembuatan user interface: Meaningful title, pemberian nama suatu form yang cukup jelas untuk menerangkan kegunaan form tersebut Comprehensible instructions, penggunaan terminologi yang umum untuk menyampaikan instruksi ke user dan jika informasi tambahan dibutuhkan, maka harus disediakan helpscreen. Logical grouping and sequencing of fields, field yang saling berhubungan ditempatkan pada form/report yang sama. Urutan field harus logis dan konsisten. Visually appealing layout of the form / report, tampilan form/report harus menarik, dan sesuai dengan hard copy agar konsisten. Familiar field labels, label yang digunakan harus familiar sehingga pengguna yang menggunakan aplikasi tersebut merasa lebih nyaman. Consistent terminology and abbreviations, terminologi dan singkatan yang digunakan harus konsisten. Consisten use of color, warna yang digunakan harus meningkatkan penampilan dari form/report yang ada. Visible space and boundaries for data-entry fields, jumlah tempat yang disediakan untuk menginput data harus diketahui oleh pengguna. Convenient cursore movement, pengguna dapat mudah menjalankan operasi yang diinginkan dengan menggerakan cursor pada form/report. Error correction for individual characters and entire field,pengguna dapat dengan mudah menjalankan operasi
21
yang diinginkan dan melakukan perubahan terhadap nilai field. Error messages for unacceptable values, memberikan pesan kesalahan terhadap nilai yang salah. Optional fields marked clearly, field yang optimal dapat dengan mudah di identifikasi oleh pengguna. Explanatory messages for fields, ketika user menempatkan kursor ke field, informasi tentang field tersebut harus dapat dilihat. Completion Signal, indikator yang menjelaskan bahwa suatu proses telah selesai dilaksanakan. • Prototyping Membuat model kerja sistem database. Tujuan dari pembuatan prototyping adalah : o Mengidentifikasi fungsi dari sistem yang ada berjalan dengan baik atau tidak. o Untuk memberikan perbaikan-perbaikan atau penambahan fungsi yang baru. o Untuk klarifikasi kebutuhan pengguna. o Untuk evaluasi feasibilitas (kemungkinan yang akan terjadi)dari disain sistem khusus. • Implementation Merupakan realisasi fisik dari disain database dan aplikasi.Implementasi database dicapai dengan menggunakan: o DDL untuk membuat skema database dan file database kosong. o
DDL untuk membuat sudut pandang pengguna yangdiinginkan
o 3GL(Third Generation Language) dan 4GL(FourthGeneration Language) untuk membuat program aplikasi.Termasuk transaksi database
disertakan
dengan
menggunakan
DML,
atau
ditambahkan pada bahasa pemrograman. •
Data Conversion and Loading Pemindahan data yang ada ke yang baru dan mengkonversi ke aplikasi untuk menjalankan database yang baru. Tahapan ini dibutuhkan ketika sistem database baru menggantikan sistem yang lama. DBMS biasanya
22
memiliki utilitas yang memanggil ulang file yang sudah ada ke dalam database baru. •
Testing Suatu proses menjalankan sistem database dengan tujuan untuk menemukan error. Dengan menggunakan strategi uji coba yang direncakan dan data yang sesungguhnya. Pengujian hanya akan terlihat jika kesalahan software. Mendemonstrasikan database dan program aplikasi terlihat berjalan seperti yang diharapkan.
•
Case tools Pada bukunya Connolly dan Begg (2010, p366), tahap pertama dari siklus perencanaan pembangunan basis data sistem database juga dapat melibatkan
pemilihan
yang
di
bantu
Computer-Aided
Software
Engineering(CASE) tools. dalam arti luas, CASE dapat diterapkan untuk setiap alat yang mendukung pengembangan software. •
Operational Maintenance Suatu proses mengawasi dan memelihara sistem database setelah proses instalasi selesai, meliputi : o Pengawasan performa sistem, jika performa menurun maka memerlukan perbaikan atau pengaturan ulang database. o Pemeliharaan dan pembaharuan aplikasi database. o Penggabungan kebutuhan baru ke dalam aplikasi database.
2.1.7 Database Design Pada bukunya Connolly dan Begg (2010, p466), Dalam menyajikan metodologi desain database, proses desain dibagi menjadi tiga tahap utama: conceptual, logical, dan physical database design. Pada tahap conceptual ini bertujuan membuat model data yang digunakan perusahaan independen dari semua pertimbangan fisik. Conceptual database design ini dibagi menjadi beberapa langkah, yaitu : Step 1 Membangun Conceptual Data Model Tujuannya adalah untuk membangun local conceptual data model dari perusahaan untuk tiap view yang spesifik. Tiap
23
local konseptual data model terdiri dari entity type, relation type, atribut - atribut, domain–domain atribut,primary key, alternate key, dan integrity constraint. Hal-hal yang perlu dilakukan untuk membangun conceptual data model adalah 1. Identifikasikan Tipe Entitas Tujuan mengidentifikasi tipe entitas adalah untuk mengenali tipe–tipe entitas utama yang dibutuhkan oleh user sebagai view. 2. Identifikasikan Tipe Relationship Bertujuan untuk mengenali relationship–relationship penting yang ada diantara tipe – tipe entitas yang telah diidentifikasi terlebih dahulu.Untuk dapat mengerti relationship, pertama harus memahami multiplicity. Multiplicity adalah jumlah dari kejadian–kejadian yang mungkin dari sebuah tipe entitas yang terhubung pada kejadian tunggal dari tipe entitas yang berhubungan melalui relationship penting.Jenis-jenis multiplicity adalah: One-to-One (1:1) Relationship Hubungan yang terjadi diantara dua entitas yang saling terlibat adalah satu-satu dan dapat pula member entitas yang satu ada yang tidak berhubungan dengan member dari entitas yang berelasi dengannya dan entitas tersebut juga berelasi maksimal 1. Berikut ini merupakan contoh relationship dari one-to-one yang dapat dilihat pada gambar.
24
Gambar 2.2 Relationship One-to-One Pada Gambar 2.2, dapat terlihat bahwa A hanya terhubung one-to-one (1:1), dengan C, dan B hanya terhubung one-toone (1:1), dengan D. Jadi dari Gambar 2.2 dapat dituliskan notasi multiplicity–nya seperti pada gambar dibawah ini.
Gambar 2.3 One-to-One Relationship Nation One-to-Many (1:*) Relationship Hubungan yang terjadi diantara dua entitas yang saling terlibat adalah satu-banyak. Dimana sebuah member dari entitas dapat berhubungan dengan satu atau banyak member dari entitas yang lain dan member dari entitas yang lainnya berhubungan (bisa dari 0), sampai maksimal 1. Berikut ini merupakan contoh relationship dari one-tomany yang dapat dilihat pada Gambar dibawah.
25
Gambar 2.4 Relationship One-to-Many Pada Gambar 2.4, dapat terlihat bahwa B terhubung one-tomany (1:*), dengan D dan E. Jadi dari Gambar 2.4 dapat dituliskan notasi multiplicity-nya seperti yang terlihat pada gambar di bawah.
Gambar 2.5 One-to-Many Relationship Nation Many-to-Many (*:*) Relationship Hubungan yang terjadi diantara dua entitas yang saling terlibat adalah banyak-banyak. Member dari sebuah entitas dapat berelasi dengan entitas yang lain dengan maksimal multiplicity banyak (*),dan sebaliknya dengan relasi entitas yang berhubungan tersebut.Berikut ini merupakan contoh relationship dari many-to-many yang terlihat pada gambar dibawah.
26
Gambar 2.6 Relationship Many-to-Many Pada Gambar 2., dapat terlihat bahwa A terhubung one-to-many (1:*), dengan D dan E, sedangkan E terhubung one-to-many (1:*), dengan A dan B. Jadi dari entitas Group 1 (nilainya A dari Gambar 2.6), dan Group 2 (nilainya E dari Gambar 2.6), terhubung many-to-many(*:*). Jadi dari Gambar 2.6 dapat dituliskan notasi multiplicity-nya seperti yang terlihat pada gambar dibawah.
Gambar 2.7 Many-to-Many Relationship Nation 3. Identifikasikan dan Asiosiasikan Atribut dengan Tipe Entitas dan Tipe Relationship.
27
Tujuannya adalah untuk menghubungkan atribut – atribut yang ada dengan entitas atau relationship type yang sesuai. 4. Menentukan Domain Atribut Bertujuan untuk menentukan domain – domain untuk atribut – atribut dalam local conceptual data model. Menurut Connolly dan Begg (2010, p479), Domain atribut merupakan identifikasi, pencatatan nama mereka dan karateristik dalam suatu kamus data.Setiap atribut di dalam relasi ditetapkan dalam domain. Domain mungkin berbeda untuk tiap atribut, atau dua atau lebih atribut mungkin ditetapkan dalam domain yang sama. 5. Penentuan Atribut Candidate Key, Primary Key, dan Alternate Key Bertujuan untuk mengidentifikasikan candidate – candidate key untuk tiap tipe entitas, dan jika terdapat lebih dari satu candidate key, maka pilih salah satu untuk dijadikan primary key. Menurut Connolly dan Begg (2010 ,p 479-481), ketika memilih primary key diantara candidate key, kita dapat menggunakan panduan berikut untuk membantu pemilihan primary key, yaitu : -
Candidate key dengan kumpulan atribut yang minimal
-
Candidate key yang nilainya jarang berubah
-
Candidate
key
dengan
karakter
–
karakter yang paling sedikit(untuk yang memiliki textual attributes),Candidate key dengan nilai maksimum paling rendah (untuk yang memiliki numerical attributes),Candidate key yang paling mudah digunakan dari sudut pandang user
28
6. Mempertimbangkan penggunaan enhanced modeling concept(optional) Bertujuan
untuk
mempertimbangkan
penggunaan
enhanced modeling concepts, seperti specialization / generalization, aggregation, dan composition. 7. Memeriksa model dari redundancy Bertujuan
untuk
memeriksa
apakah
terdapat
redundancy dalam model.Dua kegiatan dalam langkah ini adalah : memeriksa kembali one-to-one relationship dan menghilangkan redundany relationships.Dalam menghilangkan redundant dalam basis data ada sebuah tehnik yang dinamakan normalisasi, Menurut Connolly dan Begg (2010, p416), normalisasi adalah teknik untuk menghasilkan satu set hubungan dengan sifat yang diinginkan, berdasarkan kebutuhan data perusahaan. 8. Validasi Model Konseptual dengan User Transaction Bertujuan untuk menjamin bahwa model konseptual mendukung transaksi – transaksi yang dibutuhkan oleh view. 9. Meninjau
local
conceptual
data
model
dengan
pengguna Bertujuan untuk meninjau local conceptual data model dengan user untuk menjamin bahwa model tersebut adalah representasi yang sebenarnya dari data yang dibutuhkan oleh perusahaan. Step 2 Membangun Logical database design perancangan
logikal
database
adalah
suatu
proses
pembangunan model datadan pemetaan model konseptual ke model logikal yang dipengaruhi oleh model data yang menjadi tujuan dari database. Dalam perancangan model logikal,model data yang telah diperoleh dalam database konseptual diubah dalam bentuk dimana data yang ada dipengaruhi oleh model data yang menjadi tujuan
29
database.Hal-hal yang perlu dilakukan untuk membangun logical data model adalah : 1) Menentukan Relasi – Relasi untuk Model Data Logikal Bertujuan untuk menciptakan relasi – relasi untuk model data logikal untuk merepresentasikan entitas – entitas, relationship – relationship,dan atribut – atribut yang telah diidentifikasikan.Relationship yang dapat muncul pada model data konseptual diantaranya adalah : -
Strong Entity Type dan Weak Entity Type Menurut Connolly dan Begg (2010, p383) strong entity type adalah tipe entitas yang keberadaannya tidak bergantung (independent), pada beberapa tipe entitas lainnya.Karakteristik dari strong entity type adalah tiap entity occurrence dapat diidentifikasi secara unik menggunakan atribut primary key dari tipe entitas.Strong entity type sering juga disebut parent atau owner atau dominant entities.weak entity
type
adalah
tipe
entitas
yang
keberadaannya bergantung (dependent), pada beberapa tipe entitas lainnya. Weak entity type juga disebut child, dependent,atau subordinate entities. -
Superclass/subclass relationship types Menurut Connolly dan Begg (2010, p400), untuk tiap superclass / subclass relationship dalam data model
konseptual,kita
mengidentifikasikan
entitas superclass sebagai entitas parent dan entitas subclass sebagai entitas child. Terdapat banyak
pilihan
dalam
merepresentasikan
relationship sebagai salah satu atau lebih relasi – relasi. Pilihan yang paling sesuai tergantung dari sejumlah faktor seperti disjointnese dan
30
participation constraint pada superclass / subclass relationship apakah subclass–subclass terlibat dalam distinct relationship dan jumlah participan–participan
dalam
superclass
/
subclass relationship. -
Complex relationship types Menutur Connolly dan Begg (2010, p498), untuk setiap complex relationship menciptakan sebuah relasi untuk merepresentasikan relationship dan termasuk semua atribut yang merupakan bagian dari relationship
tersebut.Kita
menyalin
salinan
primary key dari entitas yang berhubungan dalam complex relationship kedalam relasi baru, untuk berlaku sebagai foreignkey. -
Multi-valued attributes Menurut Connolly dan Begg (2010, p471), menciptakan relasi yang merepresentasikan atribut–atribut multi-valued dan menyalin salinan primary key dari entitas owner kedalam relasi baru untuk menjadi foreign key.
2) Validasi Model dengan Normalisasi Bertujuan untuk untuk memvalidasi relasi – relasi dalam model data konseptual menggunakan teknik normalisasi.Tujuan dari normalisasi ini adalah untuk meminimalkan redudansi data (perulangan data), dan update anomalies, menciptakan representasi data, hubungan antar data dan contraint 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 redundansi data atau kejanggalan pengubahan (update anomaly). Menurut Connolly dan Begg (2010, p391),update anomaly ada tiga jenis yaitu insert anomaly, delete
31
anomaly, dan modification/update anomaly. Insert anomaly adalah kejanggalan yang terjadi terhadap sebuah table pada saat dilakukan 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. Berikut ini adalah tahapan- tahapan dari Normalisasi : A. UNF (Un-Normal Form) Proses normalisasi dimulai dari bentuk UNF (Un-NormalForm), yaitu tabel yang masih mengandung repeating group.Tabel UNF ini dibuat dengan mentransformasi data dari sumber informasi seperti formulir atau bon-bon ke dalam tabel berbentuk baris dan kolom. B. 1NF (First-Normal Form) Pada bentuk normal pertama (First Normal Form–1NF),sebuah relasi dimana pada setiap sel atau perpotongan baris dan kolom, jika dan hanya jika mengandung satu nilai, setiap elemen gandung nilai atomik (single value). Untuk menjadi
menjadikan normal
mengidentifikasikan
bentuk
tidak
pertama dan
normal dengan
menghilangkan
repeating groups(sebuah atau sekumpulan atribut dalam tabel yang memiliki multiple
32
values untuk single occurrence dari atribut key yang terpilih untuk tabel tersebut), yang ada di dalam tabel. C. 2NF (Second Normal Form) Sebuah tabel disebut berada pada bentuk normal kedua (2NF), jika dan hanya jika setiap atribut bukan primary key ( PK ),tergantung sepenuhnya pada PK. Untuk mengetahui apakah 1NF telah berada pada 2NF maka tentukan PK dan funtional dependency. D. 3NF (Third Normal Form) Sebuah tabel disebut berada pada bentuk normal ketiga jika dan hanya jika tidak ada atribut bukan primary key yang bergantung kepada
atribut
bukan
primary
key
lainnya.Sebuah tabel yang mengandung atribut bukan PK yang tergantung pada atribut PK lainnya disebut transitive dependency. Dengan kata lain sebuah tabel disebut berada pada 3NF jika
dan
hanya
jika
tidak
mengandung
transitive dependency. E. BCNF (Boyce-Codd Normal Form) Suatu relasi dianggap sebagai bentuk normal BCNF jika dan hanya jika setiap determinan adalah
candidate
key.Untuk
mengetahui
apakah suatu tabel sudah berada pada bentuk normal BCNF maka harus dilakukan analisa atas functional dependency dari sebuah tabel. 3) Memvalidasi Relasi dengan User Transaction Bertujuan untuk menjamin bahwa relasi – relasi dalam model data logikal mendukung transaksi – transaksi yang dibutuhkan oleh view. 4) Mendefinisikan Kendala Integrity
33
tujuannya adalah memeriksa integrity constraint yang direpresentasikan dalam model data logical. Integrity constraint terdiridari 5 jenis, yaitu : data yang dibutuhkan, attribute domain constrain,entity integrity, referential integrity, dan general constraint. -
Data yang dibutuhkan beberapa atributharus selalu memiliki nilai yang valid. Dengan kata lain, atribut tersebut tidak boleh bernilai null.
-
Attribute domain constraint tiap atribut mempunyai domain, yaitu kumpulan nilai-nilai yang legal.Misalnya, ada 2 jenis kelamin yaitu ‘M’ atau ‘F’, jadi domain untuk atribut jenis kelamin adalah karakter string tunggal yang terdiri dari ‘M; atau ‘F’. Batasan ini harus diidentifikasikan ketika kita memilih domain atribut untuk model data. Multiplicity Dalam
bukunya
dan
p503),multiplicity
Begg
(2010,
merepresentasikan
batasan yang diletakkan pada relationship antara data di dalam database. Entity integrity Dalam bukunya Connolly dan Begg (2010, p503), menyatakan,primary key dari entitas tidak boleh bernilai null. Batasan ini harus betul – betul dipertimbangkan ketika kita mengidentifikasikan primary key untuk tiap tipe entitas. Referential integrity Dalam bukunya Connolly dan Begg (2010, p503)
menyatakan,
foreign
key
menghubungkan tiap tuple dalam relasi child ke tupledalam relasi parent yang meliputi
34
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. Dalam bukunya Connolly dan Begg (2010, p504), terdapat 5 strategi untuk mempertahankan referential integrity pada saat penghapusan tuple pada relasi parent, yaitu : - NO ACTION Mencegah penghapusan dari relasi parent jika terdapat tuple–tuple child yang ditunjuk. - CASCADE Ketika tuple parent dihapus, secara otomatis juga dihapus tuple-tuple child yang ditunjuk - SET NULL Ketika tuple parent dihapus, nilai foreign key dalam semua tuple – tuple child yang berhubungan
secara
otomastis
diubah
menjadi null. - SET DEFAULT Ketika tuple parent dihapus, nilai foreign key dalam semua tuple – tuple child yang berhubungan
secara
otomatis
diubah
menjadi nilai default-nya. - NO CHECK Ketika
tuple
melakukan
parent
apa–apa
dihapus, untuk
tidak
menjamin
referential integrity tetap terjaga. General constraints Pengubahan–pengubahan pada entitas – entitas mungkin diatur oleh batasan – batasan
yang
memerintah
transaksi
35
’realworld’ yang direpresentasikan oleh pengubahan tersebut 5) Me-review logical data model dengan User Bertujuan
untuk
menjamin
bahwa
pengguna
mempertimbangkan model data logikal menjadi representasi yang sebenarnya dari kebutuhan data perusahaan. 6) Menggabungkan Logical Data Model ke dalam Global Model (optional) Bertujuan untuk merepresentasikan semua user views dari database. 7) Memeriksa untuk perkembangan lebih lanjut Bertujuan untuk menentukan apakah terdapat perubahan signifikan pada masa depan yang dapat diramalkan dan untuk menilai apakah model data logikal dapat mengakomodasi perubahan tersebut. Step 3 Membangun Physical Database Design perancangan fisik database adalah proses membuat deskripsi dariimplementasi
database
pada
secondary
storage,
mendeskripsikan relasi dasar,file organization, dan index yang digunakan untuk mendapatkan akses efisien pada data dan semua integrity constraint yang berhubungan dan security measures. Tujuannya adalah untuk memutuskan bagaimana struktur logikal diimplementasikan (sebagai relasi dasar), secara fisik dalam DBMS yang dipilih.Hal-hal yang perlu dilakukan untuk membangun logical data model adalah : 1) Menerjemahkan logical data model untuk DBMS yang dipilih Bertujuan untuk menghasilkan relational database schema dari data model logikal yang dapat diimplementasikan dalam DBMS yang dipilih 3 aktifitas ini : o Merancang relasi – relasi dasar o Merancang Representasi untuk Data Turunan o Merancang General Constraint
36
Step 4 Membuat File Organization dan Indexes Bertujuan untuk menentukan file organisasi yang optimal untuk menyimpan relasi–relasi dasar dan indeks–indeks yang dibutuhkan untuk mencapai performance yang dapat diterima, dengan begitu, relasi dan tuple akan disimpan pada secondary storage. Hal-hal yang perlu dilakukan untuk membangun Membuat File Organization dan Indexes adalah : 1. Menganalisa Transaksi Bertujuan untuk mengerti fungsi dari transaksi yang akan
diterapkan
pada
database
dan
untuk
menganalisa transaksi – transaksi yang penting. 2. Memilih Organisasi file Bertujuan untuk menentukan organisasi file yang efisien untuk tiap relasi dasar. 3. Memillih index – index Bertujuan untuk mempertimbangkan apakah dengan menambahkan
index
akan
meningkatkan
performansi dari sistem. 4. Memperkirakan kebutuhan disk space Bertujuan untuk memperkirakan jumlah disk space yang dibutuhkan oleh database, dalam menyimpan data dan semua index – index nonclustered dasar dalam tabel yang tidak mempunyai clustered index maka kita dapat menggunakan beberapa langkah berikut : -
Menghitung space yang digunakan untuk menyimpan data
-
Menghitung space yang digunakan untuk menyimpan tiap index nonclustered dasar. Menjumlahkan dikalkulasikan.
Step 5 Merancang user view
nilai–nilai
yang
telah
37
Bertujuan untuk merancang user view yang diidentifikasikan selama pengumpulan kebutuhan dan tahap analisis dari system development lifecycle. Step 6 Merancang mekanisme keamanan Bertujuan untuk merancang mekanisme keamanan untuk database seperti yang ditentukan oleh user pada waktu tahap pengumpulan kebutuhan dari system development life cycle. Mekanisme keamanan yang dirancang dalam database yaitu mekanisme keamanan sistem dan mekanisme keamanan data. Step 7 Mempertimbangkan pengenalan redudancy control Bertujuan untuk menentukan apakah pengenalan redundancy yang dikontrol dengan aturan – aturan normalisasi akan meningkatkan performansi sistem. Step 8 Mengawasi dan mengendalikan sistem operasional Bertujuan
untuk
mengawasi
sistem
operasional
dan
meningkatkan performansi dari sistem untuk memperbaiki keputusan perancangan yang tidak sesuai atau merefleksikan perubahan kebutuhan. 2.1.8 Entity Relationalship Model 2.1.8.1 Entitas Menurut Connoly & Begg,(2010, p373) Entitas adalah sekumpulan objek yang
memiliki sifat-sifat yang sama dan diidentifikasi oleh
perusahaan sebagai objek yang mempunyai keberadaan yang bebas. Sebuah entitas dapat menjadi objek secara fisik seperti Staff, barang, atau menjadi objek dengan keberadaan konseptualseperti penjualan atau pembayaran. 2.1.8.1.2 Relationship Menurut Connolly & Begg (2010,p374), relationship adalah sekumpulan hubungan yang berati antara satu atau lebih entitas. Setiap tipe hubungan diberi nama yang menggambarkan fungsi tersebut.
38
2.1.8.1.3 Attribute Menurut Connolly & Begg (2010, p.379), atribut adalah sifat dari entitas atau tipe relationship.Atribut menyimpan nilai yang menjelaskan setiap kejadian entitas dan menunjukkan bagian utama dari data yang disimpan di dalam database.Jenis – jenis attribute : 1) Simple Attribute yaitu atribut yang terdiri dari suatu komponen tunggal dengan keberadaan yang independent dan tidak dapat dibagi menjadi lebih kecil lagi. Dikenal juga dengan nama atomic attribute. 2) Composite attribute yaitu atribut yang terdiri dari beberapa komponen. 3) Single-Valued
Attribute,
yaitu
atribut
yang
mempunyai nilai tunggal untuk setiap kejadian. 4) Multi-valued
attribute,
yaitu
atribut
yang
mempunyai beberapa nilai untuk setiap kejadian. 5) Derived-attribute yaitu atribut yang memiliki nilai yang dihasilkan dari satu atau beberapa atribut lainnya, dan tidak harus berasal dari satu entitas. 2.1.8.1.4 Key Menurut Connoly dan Begg (2010, p150), key relasi sangat dibutuhkan untuk mengidentifikasi satu atau lebih attribute yang memiliki nilai unik. jenis-jenis key:
1. Simple Key Simple key adalah suatu Key yang dibentuk oleh satu atribut. 2. Composite Key Composite
Key
adalah
key
berdasarkan lebih dari satu atribut. 3. Candidate Key
yang
disusun
39
Candidate Key adalah suatu atribut atau satu set minimal atribut yang mengidentifikasikan secara unik suatu kejadian dari entity. 4. Primary Key Primary Key adalah satu atribut atau satu set minimal
attribute
yang
tidak
hanya
mengidentifikasikan secara unik suatu kejadian spesifik, tapi juga dapat mewakili setiap kejadian dari suatu entity. 5. Alternative Key Alternative Key adalah Candidate Key yang tidak terpakai sebagai PrimaryKey. 6. Foreign key Foreign key adalah satu atribut yang melengkapi satu hubungan (relationship)yang menunjuk ke induknya. 2.2. Teori Khusus 2.2.1 Penjualan Menurut Hall, (2011, p154), prosedur pemesanan penjualan meliputi tugas-tugas yang terkait dalam penerimaan dan pemrosesan sebuah pesanan klien, mengisi formulir pemesanan, dan pengiriman produk ke klien, penagihan pelanggan pada saat yang tepat, dan akuntansi transaksi secara benar. 1. Penerimaan pesanan Pada tahap ini, karyawan membuat sebuah sales order yang mencakup informasi penting mengenai pelanggan, seperti nama pelanggan, alamat pelanggan, nama, nomor, dan deskripsi barang yang dijual serta jumlah dan harga satuan barang yang dijual. Setelah itu, karyawan membuat sebuah salinan sales order dan menempatkannya dalam customer open order file. 2. Pemeriksaan kredit
40
Pada tahap ini, pihak perusahaan melakukan pemeriksaan kelayakan kredit pelanggn untuk menentukan batas kredit yang dapat dimiliki oleh pelanggan, apakah pelanggan tersebut memiliki histori kredit yang baik atau tidak. Fungsi penerimaan pesanan mengirimkan sales order (credit copy) kepada fungsi pemeriksaan kredit untuk pengesahan.Berkas pengesahan sales order yang dikembalikan
memicu kelanjutan
proses
penjualan
dengan
mengeluarkan informasi sales order secara bersamaan ke fungsi yang beragam. 3. Pengambilan barang Pada tahap ini, fungsi penerimaan pesanan meneruskan dokumen pengeluaran stok barang kepada fungsi pengambilan barang dalam gudang. Dokumen ini mengidentifikasikan barang-barang dalam inventaris yang harus diambil dari rak gudang, juga menyediakan otorisasi formal kepada personil gudang untuk mengeluarkan barang yang ditentukan. Setelah mengambil barang, pesanan diverifikasi dan dokumen pengeluaran stok sudah diverifikasi diteruskan ke fungsi pengiriman barang. 4. Pengiriman barang Sebelum kedatangan barang dan dokumen pengeluaran barang yang sudah diverifikasi, divisi pengiriman menerima packing slip dan shipping notice dari fungsi penerimaan pesanan. Packing slip akan dikirimkan dengan barang untuk menggambarkan isi dari pesanan. Shipping notice akan diteruskan kepada fungsi penagihan sebagai bukti bahwa pesanan pelanggan sudah terpenuhi dan dikirim. 5. Penagihan pelanggan Pada tahap ini, fungsi penagihan menerima sales order(invoice copy) dari fungsi penerimaan pesanan. Dokumen ini ditempatkan dalam S.Opending file hingga penerimaan shipping notice. Setelah shipping notice diterima, barang-barang yang dikirim dicocokan dengan harga satuan barang yang dipesan, pajak, dan ongkos kirim untuk ditambahkan kesalinan invoice dari sales order. Sales order yang sudah dilengkapi merupakan tagihan pelanggan. Setelah itu,
41
transaksi penjualan yang sudah lengkap dicatat dalam jurnal penjulan. menurut jurnal Wawan Saputra pada jurnal ANALISIS DAN PERANCANGAN
SISTEM
INFORMASI
PERSEDIAAN,
PEMBELIAN, DAN PENJUALAN PADA TOKO SINAR JAYA (2010 : 1075) penjualan adalah suatu aktivitas perusahaan yang utama dalam memperoleh pendapatan baik untuk perusahaan besar maupun perusahaan kecil. Penjualan merupakan sasaran akhir dari kegiatan pemasaran. Pada bagian ini terjadi penetapan harga melalui perundingan dan perjanjian serah terima barang, cara pembayaran yang disepakati oleh kedua belah pihak, sehingga tercipta suatu titik kepuasan. 2.2.2. Pembelian 2.2.2.1 Siklus Pengeluaran Menurut Samiaji Sarosa (2009, p. 80), Siklus pengeluaran terdiri dari a. Membuat dan memelihara daftar pemasok. b. Membuat dan memelihara catatan persediaan bahan baku. c. Mencetak order pembelian. d. Melaporkan informasi order pembelian. e. Mencatat penerimaan kiriman bahan baku. f. Mencetak cek dan catatan pengeluaran kas kepada pemasok. g. Meringkas informasi pembelian dan utang. Fokus utama dari siklus pengeluaran setiap perusahaan berbeda, seperticontoh : a. Pada perusahaan manufaktur, fokus utama dari siklus pengeluaran adalah memesan, menerima, dan membayar untuk bahan baku danbahan penolong. b. Pada perusahaan dagang, fokus utama dari siklus pengeluarannya adalah pembelian barang dagangan untuk di jual kembali. c. Sedangkan pada perusahaan jasa, siklus pengeluaran bernilai kecil karena mereka tidak membutuhkan bahan baku ataupun barang
42
dagangan. Karena selain barang, siklus pengeluaran berkaitan juga dengan pengadaan jasa misalnya pengangkutan, reparasi, dan perawatan mesin.
Gambar 2.8 Model Siklus Pengeluaran (Sarosa, 2009) Ada perusahaan manufaktur siklus pengeluaran di mulai dari adanya permintaan pembelian oleh salah satu bagian dalam produksi. Pada perusahaan manufaktur modern, permintaan pembelian dilakukan dengan berbagai cara seperti menggunakan MRP, Kanban, MRP II, dan lain-lain. Dalam MRP digunakan aplikasi komputer yang menurunkan kebutuhan material Master Production Schedule. Frekuensi dan kuantitas juga permintaan juga ditentukan oleh bagaimana sistem produksi diterapkan. Dengan menggunakan teknologi EDI dan EDI over the internet maka permintaan barang, pembelian, penerimaan order oleh pemasok sampai ke pembayaran dilakukan secara otomatis.
43
Gambar 2.9 Model siklus pembelian menggunakan EDI (Sarosa, 2009)
Gambar 2.10 Model siklus pembelian tidak menggunakan EDI (Sarosa, 2009) Dalam perusahaan dagang, khususnya eceran, permintaan akan barang yang dijual oleh konsumen sering tidak dapat diprediksi. Oleh karena itu, perusahaan dagang harus bertindak cepat dalam perubahan permintaan barang agar dapat memenangkan persaingan. Bagian pembelian berperan besar dalam menemukan pemasok yang dapat memenuhi kebutuhan dalam jangkawaktu dan biaya yang wajar. Data mengenai kebutuhan barang, kinerja pemasok, dan analisis data tersebut penting dalam
44
membuat keputusan. Tahapan proses pembelian dalam suatu perusahaan dimulai dengan adanya kebutuhan bahan yang tidak dapat dipenuhi oleh persediaan yang ada di gudang. Permintaan pembelian diteruskan ke fungsi pembelian. Fungsi pembelian membuat surat order pembelian dan mengirimkannya ke pemasok. Pemasok mengirimkan barang yang diterima oleh fungsi penerimaan barang. Fungsi penerimaan barang memperbarui data persediaan. Setelah barang diterima, pemasok mengirimkan
Faktur
yang
berfungsi
sebagai
tagihan
dengan
membandingkan order pembelian dan laporan penerimaan barang. Selanjutnya adalah membayar kepada pemasok sesuai dengan tagihan yang diverifikasi. Jika dalam siklus pendapatan kita bertindak sebagai penjual, maka dalam siklus pengeluaran kita bertindak sebagai pembelian. Menurut jurnal Enggal Sriwardiningsih pada jurnal EFFECT ON PERCEIVED STIMULATION DAN PERCEIVED CROWDING ON THE DECISION OF THE UNPLANNED PURCHASE (IMPULSE BUYING) (2011:771) Berdasarkan studi sebelumnya, peneliti melakukan penelitian tentang pengaruh rangsangan yang dirasakan dan dianggap berkumpul pada keputusan pembelian yang tidak direncanakan (impulse buying) pada toko tunggal untuk membuktikan apakah itu juga mempengaruhi perilaku konsumen di daerah tertentu. Tujuan dari penelitian ini adalah untuk mengidentifikasi rangsangan yang dirasakan konsumen pengaruh kesusahan dalam memutuskan pembelian tidak terencana (impulse buying) secara bersamaan. Menurut jurnal Kriswanto, Ririn Fibrina pada jurnal ANALISA & EVALUASI SISTEM PEMBELIAN, PERSEDIAAN & PENJUALAN TUNAI PADA PT. ZRB(2014 : 358) Siklus pembelian mencakup proses pembelian, penerimaan barang maupun jasa. Setiap perusahaan memiliki tahapan siklus pembelian yang berbeda-beda. Namun, secara umum tahapan
siklus
pembelian
kemiripan satu sama lain.
pada
perusahaan-perusahaan
memiliki
45
2.2.3. Persediaan Menurut Samiaji Sarosa (2009, p53), data persediaan yang dibahas kali ini yaitu tentang informasi mengenai persediaan barang yang siap dijual kepada pelanggan. Informasi mengenai persediaan harus disimpan pada Tabel Persediaan agar informasi yang tersedia konsisten. 2.2.4. Service Menurut Kotler dan Keller (2009) service adalah setiap tindakan atau kinerjayang dapat ditawarkan satu pihak kepada pihak lain, yang pada dasarnya tidak berwujud dan tidak mengakibatkan kepemilikan sesuatu. Dapat disimpulkan pengertian service adalah tindakan yang ditawarkan satu pihak kepada pihak lain yang tidak berwujud dan tidak mempunyai kepemilikan.
46
2.2.5. Kerangka Berpikir
Gambar 2.11 Kerangka Berpikir Pengembangan aplikasi ini berbasis pada database, dimana pengembangan aplikasi ini terdiri dari 3 fase yaitu : •
Fase Inisialisasi : Pada fase ini dimulai pada pengumpulan data dari perusahaan serta gambaran umum PT. Multi Core Abadi berupa : visi misi perusahaan,
47
struktur organisasi, dan sistem yang berjalan pada perusahaan tersebut seperti pembelian, penjualan, persediaan, dan servis. •
Fase analisis : Pada fase ini data yang telah dikumpulkan kemudian dianalisis. Analisis data perusahaan menggunakan activity diagram untuk mengetahui proses bisnis dan masalah yang terjadi sebagai acuan dalam perancangan sistem.
•
Fase perancangan : Pada fase perancangan untuk mengetahui dan mengidentifikasi entitasentitas yang terdapat pada PT. Multi Core Abadi oleh karena itu akan merancang ER Modelling setelah itu akan dilakukan tahap normalisasi yang akan menghasilkan entity relationship diagram dari ERD maka akan dibuat user interfacenya yang akan menghubungkan antara user dengan sistem.
48