Bab 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Pengertian Data Menurut Connolly & Begg, (2010, p. 70), Data adalah komponen yang paling penting dari lingkungan DBMS, berasal dari sudut pandang dari pengguna akhir, sedangkan menurut O'Brien, (2010, p. 560), Data adalah fakta-fakta atau observasi mengenai fenomena fisik atau transaksi bisnis. Lebih khusus lagi, data adalah ukuran objektif dari atribut (karakteristik) dari entitas seperti orangorang, tempat, benda, atau kejadian, sedangkan menurut Rainer & Cegielski, (2011, p. 10), Data adalah deskripsi elementer tentang suatu kejadian dan transaksi-transaksi yang dicatat, diklarifikasi dan disimpan tetapi belum diolah sehingga memberikan suatu pesan yang spesifik.
2.1.2 Pengertian Database Menurut Connolly & Begg, (2014, p. 63), Database adalah suatu koleksi data yang berhubungan secara logical dan juga deskripsi dari data tersebut, dibuat untuk memenuhi kebutuhan informasi suatu organisasi, sedangkan menurut O'Brien, (2010, p. 173), Database adalah sekumpulan elemen data yang saling berhubungan secara logikal dan saling terintegrasi, sedangkan menurut Rainer & Cegielski, (2011, p. 152), Database adalah sekelompok file yang saling berhubungan secara logis yang menyimpan data dan hubungan antar data. Menurut Liping Lu (2011), dalam jurnalnya yang berjudul “Database Design Base on GIS Gas Management Network”, database yang dikombinasikan dengan sistem pengelolaan model dan analisis yang baik dapat menyediakan informasi berguna untuk perencanaan, manajemen, dan pengambilan keputusan. Menurut Gottschalk dan Saether dalam jurnal (2010:41), Database adalah sekumpulan data yang terorganisir untuk mendukung banyak aplikasi secara efisien dengan memusatkan data dan mengontrol data redundant, sedangkan menurut Yuri Yudhaswana Joefrie & Protus Pieter Kalatiku, (2012), 9
10
Database adalah bagian dari sistem informasi, di dalamnya termasuk semua sumber daya yang dilibatkan dalam koleksi, manajemen, penggunaan dan disseminasi sumber daya informasi dari organisasi.
2.1.3 Pengertian File Based System Menurut Connoly dan Begg, (2010, p62), “File-Based System adalah suatu kumpulan dari program-program aplikasi yang menyediakan kegunaan tertentu kepada users seperti pembuatan laporan-laporan”. Setiap program mendefinisikan dan mengelola datadatanya sendiri. Namun penggunaan File Based System ini memiliki keterbatasan seperti : 1. Terjadi pemisahan dan isolasi data. 2. Terjadi duplikasi data. 3. Terjadi ketergantungan data kepada fungsi. 4. Dapat menyebabkan bentuk file yang tidak cocok untuk suatu fungsi dengan fungsi lainnya (tidak kompatibel). 5. Sulit mengembangkan fungsi-fungsi program aplikasinya Untuk
mengatasi
keterbatasan
itu,
digunakanlah
pendekatan dengan menggunakan basis data dan DBMS (Database Management System).
2.1.4 Pengertian Database Management System Menurut Connolly & Begg, (2014, p. 64), Database Management
System
adalah
sebuah
sistem
software
yang
memungkinkan user untuk mendefinisikan, membuat, memantain, dan mengontrol akses ke database, sedangkan menurut Rainer & Cegielski, (2011, p. 152), Database Management System adalah Program software (atau sekumpulan program) yang menyediakan akses ke database, sedangkan menurut O'Brien, (2010, p. 196), Database Management System adalah software utama dari pendekatan manajemen
database
karena
DBMS
mengontrol
pembuatan,
maintanance, dan penggunaan database dalam suatu organisasi dan juga end user, sedangkan menurut Yuri Yudhaswana Joefrie & Protus Pieter Kalatiku. (2012),
Database Management System (DBMS)
11
adalah perangkat keras komputer, media penyimpanan, orang yang menggunakan dan mengatur data (Database Administrator, pemakai akhir, dan pemakai dan lain-lain), perangkat lunak aplikasi yang mengakses dan mengubah data, sedangkan menurut Irena Valova (2013), Database adalah satu-satunya struktur profesional untuk mengatur, memanipulasi dan mengambil struktur informasi yang berbeda dan sejumlah besar data.
2.1.4.1 Komponen DBMS Menurut Connolly & Begg, (2014, p. 67), komponen dari sebuah DBMS adalah sebagai berikut : •
Perangkat keras (hardware) DBMS dan program aplikasi membutuhkan perangkat keras untuk bisa
menjalankan fungsi-fungsinya.
Perangkat keras yang
dimaksud adalah berkisar dari komputer tunggal pribadi ke mainframe atau jaringan dari komputer tersebut. Beberapa DBMS dapat dijalankan pada perangkat keras atau sistem operasi tertentu, sementara yang lain berjalan di berbagai perangkat keras atau sistem operasi. •
Perangkat lunak (software) Komponen perangkat lunak terdiri dari perangkat lunak DBMS itu sendiri dan program aplikasi yang dijalankan bersamaan dengan sistem operasi, termasuk jaringan perangkat lunak jika DBMS sedang digunakan melalui jaringan.
•
Data Merupakan komponen yang paling penting dalam lingkungan DBMS, tentu dari sudut pandang pengguna akhir. Data juga bertindak sebagai jembatan penghubung antara komponen mesin dengan komponen manusia.
•
Prosedur (procedures) Mengacu pada instruksi dan aturan yang mengatur desain dan penggunaan basis data. Para pengguna dari sistem dan staf yang mengelola
basis
data
membutuhkan
prosedur
yang
12
mendokumentasikan
bagaimana
cara
menggunakan
atau
menjalankan sebuah sistem. •
Orang (People) Komponen terakhir di dalam database management system adalah orang, orang-orang yang terlibat di dalam menggunakan sistem.
Gambar 2.1 The DBMS Environment
2.1.4.2 Fungsi DBMS Menurut Connolly dan Begg, (2010, p. 99) fungsi DBMS adalah sebagai berikut : •
Penyimpanan, pengambilan, dan pembaharuan data Sebuah DBMS harus menyediakan sebuah kemampuan untuk menyimpan, mengambil, dan membaharui data dalam DBMS. Ini merupakan fungsi yang mendasar dari DBMS. Dalam menyediakan fungsi ini DBMS harus menyembunyikan detil implementasi fisikal internal seperti organisasi file dan struktur penyimpanan dari pengguna.
•
Katalog User-Accesible Sebuah DBMS harus menyediakan sebuah katalog yang menyimpan gambaran tentang item data dan mudah diakses oleh pengguna. Menurut Connolly dan Begg (2010, p. 100) katalog sistem merupakan tempat penyimpanan informasi yang menjelaskan data dalam database, yaitu metadata atau data tentang data. Katalog sistem menyimpan informasi seperti berikut: - Nama, jenis, dan ukuran data - Nama relationship - Batasan integritas ada data
13
-Nama pengguna yang berotoritas yang mempunyai akses pada data -Skema eksternal, konseptual, dan internal dan pemetaan antara skema. -Pengguna statistik, seperti frekuensi dan perhitungan sejumlah akses yang dibuat pada objek dalam database. •
Mendukung Transaksi Sebuah DBMS harus menyediakan mekanisme yang akan memastikan bahwa semua kegiatan update yang dilakukan sesuai dengan transaksi yang diberikan atau tidak ada kegiatan update
yang dibuat bagi transaksi tersebut. Transaksi
merupakan sederetan tindakan yang dilakukan oleh pengguna tunggal atau program aplikasi yang mengakses atau mengubah isi database. •
Layanan Kendali Concurrency Sebuah DBMS harus menyediakan sebuah mekanisme untuk memastikan bahwa database diperbaharui dengan benar ketika banyak pengguna memperbaharui database secara bersamasama. Akses bersama relatif mudah jika semua pengguna hanya membaca data. Namun ketika dua atau lebih pengguna mengakses database secara serentak dan paling sedikit satu dari mereka memperbaharui data, disana dapat terjadi gangguan yang menghasilkan ketidakkonsistenan.
•
Layanan Perbaikan Sebuah DBMS harus menyediakan sebuah mekanisme untuk memperbaiki database disaat database mengalami kerusakan dalam berbagai cara. Kerusakan database dapat diakibatkan karena kerusakan sistem, kesalahan media, dan kesalahan software atau hardware. Atau disebabkan karena adanya kesalahan selama proses transaksi dan penyelesaian transaksi yang tidak lengkap.
•
Layanan Authorisasi
14
Sebuah DBMS harus meyediakan sebuah mekanisme untuk memastikan bahwa hanya pengguna yang berotoritas yang dapat mengakses database. Hal ini untuk mencegah data yang tersimpan tak terlihat oleh semua pengguna dan melindungi database dari akses yang tak berotoritas. •
Mendukung Komunikasi Data Sebuah DBMS harus mampu diintegrasikan dengan software komunikasi. Kebanyakan pengguna mengakses database dari workstation. Kadang workstation tersebut terhubung secara langsung ke komputer DBMS. Dalam kasus yang lain, workstation berada pada lokasi yang jauh dan berkomunikasi dengan komputer DBMS melalui jaringan. Dalam hal ini DBMS menerima permintaan sebagai pesan komunikasi dan menanggapi dengan cara yang sama. Semua pengiriman ini ditangani oleh Data Communication Manager.
•
Layanan Integritas Sebuah DBMS harus menyediakan sebuah arti untuk memastikan bahwa data di dalam database dan perubahan pada data mengikuti aturan tertentu. Integritas database dapat mengacu pada kebenaran dan konsistensi data yang disimpan. Integritas berhubungan dengan kualitas data yang disimpan. Integritas biasanya diekspresikan dengan istilah batasan, yaitu berupa aturan konsisten yang tidak boleh dilanggar oleh database.
•
Layanan Peningkatan Keterbebasan Data Sebuah DBMS harus memasukkan sebuah fasilitas untuk mendukung keterbebasan program dari struktur database yang sebenarnya. Data independence biasanya dicapai melalui sebuah view atau mekanisme subskema. Physical atau independence lebih mudah untuk dicapai karena terdapat beberapa jenis perubahan yang dapat dibuat untuk karakteristik fisikal dari database tanpa mempengaruhi view. Bagaimanapun data independence logikal yang lengkap lebih susah untuk dicapai.
15
•
Layanan Utilitas Sebuah DBMS harus menyediakan seperangkat layanan utilitas. Program utilitas membantu DBA mengelola database secara efektif. Beberapa utilitas bekerja pada tingkat eksternal, dan konsekuensinya dapat dibuat oleh DBA, yang lainnya bekerja pada tingkat internal dan dapat disediakan hanya dengan vendor DBMS. Contoh dari utilitas tersbut antara lain: -Fasilitas import, untuk memuat database dari flat file, dan fasilitas eksport untuk memuat database pada flat file. -Fasilitas pemantauan, untuk memantau penggunaan dan operasi database. -Program analisa statistik, untuk memeriksa kinerja dan penggunaan statistik. -Fasilitas penyusunan indeks, untuk menyusun kembali indeks dan overflow mereka. -Penempatan dan pengumpulan sampah, untuk menghilangkan record yang dihapus secara fisik dari alat penyimpanan, untuk menggabungkan ruang yang terlepas dan untuk menempatkan
kembali
record
tersebut
dimana
ia
dibutuhkan.
2.1.4.3 Keuntungan dan Kerugian DBMS Menurut Conolly (2010, p77) manajemen basis data memiliki banyak potensi yang menjanjikan, tetapi juga memiliki beberapa kelemahan. Berikut adalah beberapa kelemahan dan kelebihan dari manajamen basis data. Kelebihan yang dimiliki oleh Sistem Manajemen Basis Data: -
Kontrol redudansi data (Control of data redudancy).
-
Konsistensi data (Data consistency).
-
Lebih banyak informasi dari jumlah data yang sama (More information from the same amount of data).
-
Berbagi data (Sharing of data)
-
Integritas data meningkat (Improved data integrity).
-
Meningkatkan keamanan (Improved security)
16
-
Pelaksanaan standarisasi (Enforcement of standards).
-
Skala ekonomi (Economy of scale).
-
Keseimbangan konflik kebutuhan (Balance of conflicting requirements)
-
Meningkatkan askesibilitas dan respon data (Improved data accessibility and responsiveness).
-
Meningkatkan produktivitas (Increased productivity).
-
Meningkatkan
pemeliharaan
melalui
independensi
data
(Improved maintenance through data independence). -
Meningkatkan konkurensi (Increased concurrency).
-
Meningkatkan backup dan layanan pemulihan (Improved backup and recovery services).
Kelemahan yang dimiliki oleh Sistem Manajemen Basis Data: -
Complexity.
-
Size.
-
Cost of DBMS.
-
Additional hardware costs.
-
Cost of conversion.
-
Performance.
-
Greater impact of a failure.
2.1.5 Pengertian Sistem Menurut O'Brien (2010, p. 26), sistem adalah satu set komponen, yang saling berhubungan dengan batasan yang terdefinisi dengan jelas, yang bekerja bersama menuju tujuan yang bersama dengan menerima input serta menghasilkan output dalam proses transformasi yang teratur, Sedangkan menurut Gelinas dan Dull (2012 : 13), sistem adalah seperangkat elemen independen yang bersamasama mencapai tujuan spesifik. Sistem juga dikatakan sebagai kumpulan dari bagian yang saling terintegrasi satu dengan yang lain, sedangkan menurut Hall (2011 : 5) berpendapat bahwa “A system is a group of two or more interrelated components or subsystems that serve a common purpose.” Artinya sistem adalah sekelompok
17
komponen atau sub-sistem yang memiliki tujuan yang sama, sedangkan menurut Satzinger, Jackson & Burd (2012 : 6), ”System is a collection of interrelated components that function together to achieve some outcome.” Terjemahannya adalah, ”Sistem merupakan kumpulan dari komponen yang saling terkait yang berfungsi bersamasama untuk mencapai beberapa tujuan.”
2.1.6 Pengertian Informasi Menurut Gelinas dan Dull (2012 : 18), informasi didefinisikan sebagai data yang disajikan dalam bentuk yang membantu dalam aktivitas pengambilan keputusan. Informasi tersebut mempunyai nilai kepada pengambil keputusan karena mengurangi ketidakpastian dan meningkatkan pengetahuan akan area tertentu yang menjadi perhatian, sedangkan menurut Stair dan Reynold (2011, 5), informasi adalah kumpulan fakta yang terorganisir dan diproses sehingga memiliki nilai tambah di luar nilai fakta individu, sedangkan menurut Hall (2013 : 10), informasi sering diartikan sebagai data yang diolah dimana informasi tersebut ditentukan oleh efeknya terhadap pengguna, bukan dari bentuk fisiknya, sedangkan menurut Reynolds dan Stair (2010 : 5), ”Information is a collection of facts organized so that they have additional value beyond the value of the individual facts”. Terjemahannya adalah “Informasi adalah kumpulan fakta yang terorganisir sehingga memiliki nilai tambah di luar nilai fakta dari individu”, sedangkan informasi menurut Gellinas dan Wheeler (2012 : 18), ”Information is data presented in a form that is useful in a decision-making activity”. Apabila diterjemahkan menjadi “Informasi merupakan data yang ditampilkan dalam sebuah formulir yang berfungsi dalam aktivitas pembuatan keputusan. Menurut Gelle & Karhu (2010) dalam jurnalnya yang berjudul “Information Quality for Strategic Technology Planning”, informasi menjadi lebih global dari sebelumnya, dengan mengikuti perkembangan pasar dan teknologi. Orang-orang harus memperhatikan seluruh dunia, informasi yang tersebar diterima dari distribusi sumber-sumber yang sudah ada.
18
2.1.7 Pengertian Sistem Informasi Menurut Hall (2011, p780), “Information system is set of formal procedures by which data are collected, processed into information, and distributed to users”, yang terjemahannya: Sistem informasi adalah satu set prosedur formal dimana data dikumpulkan, diproses menjadi informasi dan didistribusikan kepada pengguna, sedangkan menurut Gelinas dan Dull (2012, p14), “Information system is a man-made system that generally consists of integrated set of computerbased components and manual components established to collect, store, and manage data and provide output information to users”, yang terjemahannya: Sistem informasi adalah sistem buatan manusia yang secara umum terdiri dari kumpulan komponen berbasis komputer yang terintegrasi dan komponen manual yang dibangun untuk mengumpulkan, menyimpan dan mengelola data serta menyediakan ouput informasi kepada pengguna, sedangkan menurut Satzinger, Jackson, and Burd (2010, p. 6), Sistem Informasi adalah kumpulan komponen komputer yang saling berhubungan yang mengumpulkan, memproses, menyimpan (biasanya dalam database), dan menyediakan sebagai output informasi yang diperlukan untuk menyelesaikan tugas bisnis, sedangkan menurut Satzinger, et al (2012, p4), “An Information system is a set of interrelated computer components that collects, processes, stores(usually in a database), and provides as output the information needed to complete business tasks”, yang terjemahannya adalah: Sistem Informasi adalah seperangkat komponen komputer saling terkait yang mengumpulkan, memproses,
menyimpan
(biasanya
dalam
database),
dan
menyediakan sebagai output informasi yang dibutuhkan untuk menyelesaikan tugas-tugas bisnis.
2.1.8 Database Language Menurut Connolly & Begg, (2010, p. 91), Database Language adalah sebuah sublanguage data yang terdiri dari dua bagian, yaitu Data Definition Language (DDL) dan Data Manipulation Language
19
(DML). DDL digunakan untuk menspesifikasi skema database, sedangkan DML di gunakan untuk membaca dan update database. Bahasa ini di sebut sebagai data sublanguages karena bahasa ini tidak termasuk ke dalam konstruksi untuk semua tingkat kebutuhan komputasi, seperti pernyataan yang bersifat kondisional atau iteratif, yang disediakan oleh bahasa pemograman tingkat tinggi. Kebanyakan data sublanguanges juga menyediakan perintah yang non-embedded, atau interaktif, yang dapat dimasukkan secara langsung dari terminal.
2.1.8.1 Data Definition Language Menurut Connolly & Begg, (2010, p. 92), DDL adalah sebuah
bahasa
yang
memungkinkan
Database
administrator atau user untuk mendeskripsikan dan memberi nama terhadap entitas-entitas, atribut-atribut, dan relasi-relasi yang dibutuhkan untuk aplikasi, beserta integrity yang berhubungan dan security constraints.
2.1.8.2 Data Manipulation Language Menurut Connolly & Begg, (2010, p. 92), DML adalah sebuah bahasa yang menyediakan seperangkat operasi untuk mendukung operasi dasar manipulasi data pada data yang disimpan dalam database.
2.1.9 Database System Development Lifecycle Menurut Connolly & Begg, (2014, p. 347), Database System Development Lifecycle untuk merancang aplikasi sistem basis data diperlukan tahapan-tahapan yang dinamakan dengan siklus hidup aplikasi basis data (database system development lifecycle). Tahapantahapan database system development life cycle adalah sebagai berikut: 1. Database planning 2. System definition 3. Requirements collection and analysis 4. Database design
20
•
Conceptual Database Design
•
Logical Database Design
•
Physical Database Design
5. DBMS selection (Optional) 6. Application Design 7. Prototyping (Optional) 8. Implementation 9. Data Conversion and Loading 10. Testing 11. Operational Maintenance
Gambar 2.2 The Stages of Database System Development Lifecycle
21
Berikut
penjelasan
tahapan-tahapan
database
system
development life cycle :
2.1.9.1 Database Planning Kegiatan manajemen yang memungkinkan tahapan siklus
hidup
pengembangan
sistem
database
untuk
direalisasikan seefisien dan seefektif mungkin. Ada 3 isu utama dalam memformulasikan sebuah strategi IS, yaitu: 1. Identifikasi dari rencana dan juga tujuan perusahaan dengan determinasi dari kebutuhan Sistem Informasi. 2. Evaluasi
dari
Sistem
Informasi
saat
ini
untuk
menentukan kekuatan maupun kelemahan yang terdapat dalam perusahaan. 3. Mengidentifikasi kesempatan IT yang memungkinkan untuk keunggulan kompetitif.
2.1.9.2 System Definition Kegiatan yang menentukan ruang lingkup dan batasbatas
sistem
database,
termasuk
pandangan
utama
pengguna, penggunanya, dan area aplikasi. Sebelum mendesain Database System, kita harus mengidentifikasi batasan dari sistem yang akan kita buat, dan bagaimana sistem tersebut dapat berhubungan dengan Sistem Informasi dari organisasi. A. User Views Mendefinisikan apa yang di butuhkan dari Sistem Database dari sudut pandang peran kerja tertentu (sepeti manajer atau supervisor) atau area aplikasi perusahaan (seperti marketing, stok control, dan sebagainya).
22
Gambar 2.3 Userview
2.1.9.3 Requirements Collection and Analysis Proses mengumpulkan dan menganalisa informasi tentang bagian dari perusahaan yang akan didukung oleh Database System, dan menggunakan informasi ini untuk mengidentifikasi kebutuhan dari sistem baru. Informasi dikumpulkan dari tiap-tiap sudut pandang utama pengguna, antara lain : 1. Deskripsi penggunaan data. 2. Detail bagaimana data digunakan. 3. Kebutuhan tambahan untuk Database System baru. Aktifitas penting lainnya dalam tahapan ini, yaitu untuk menentukan bagaimana kita menghadapi situasi dimana terdapat lebih dari satu pandangan user untuk Database System. Terdapat 3 pendekatan utama untuk
23
mengatur kebutuhan Database System dengan berbagai pandangan user, yaitu : A. Centralized Approach Kebutuhan untuk tiap pandangan user digabung menjadi seperangkat kebutuhan untuk Database System yang baru. Data model yang merepresentasikan semua pandangan user dibuat saat tahapan Database Design. B. View Integration Approach Kebutuhan untuk tiap pandangan user berbentuk listlist yang terpisah. Data model yang merepresentasikan tiap pandangan user dibuat dan kemudian digabungkan pada tahapan Database Design.
2.1.9.4 Database Design Proses membuat sebuah desain yang akan mendukung Mission Statement dan juga Mission Objectives untuk keperluan Database System perusahaan. A. Approaches to Database Design Menurut Connolly & Begg, (2014, p. 355), ada dua pendekatan untuk mendesain sebuah Database, yaitu : 1. Bottom-up Pendekatan ini dimulai pada tingkat awal dari atribut, dimana melalui analisa asosiasi antar atribut-atribut dikelompokkan menjadi relasi yang merepresentasikan tipe dari entitas-entitas dan juga relasi
antara
entitas-entitas.
Pendekatan
ini
diperlukan untuk mendesain Database sederhana dengan jumlah atribut yang sedikit. 2. Top-down Pendekatan ini dimulai dengan pengembangan dari data model yang berisi beberapa entitas tingkat tinggi
dan
relasi-relasi,
mengimplementasikan
dan
kemudian
peningkatan
Top-down
untuk mengidentifikasi entitas tingkat rendah, relasi-
24
relasinya, dan juga atribut-atribut yang saling berasosiasi.
Pendekatan
ini
diperlukan
untuk
mendesain Database yang lebih kompleks. B. Data Modeling Terdapat 2 tujuan utama dari Data Modeling, yaitu untuk mendukung pemahaman dari arti dari sebuah data dan untuk
memfasilitasi
komunikasi
tentang
kebutuhan
informasi. Terdapat 8 kriteria untuk menghasilkan data model yang optimal, yaitu : 1. Structural Validity 2. Simplicity 3. Expressibility 4. Nonredundancy 5. Shareability 6. Extensibility 7. Integrity 8. Diagramatic Representation C. Phases of Database Design Menurut Connolly & Begg, (2014, p. 356), tahapan dalam Database Design adalah : 1
Conceptual database design Proses mengkonstruksi model dari data yang
digunakan dalam suatu organisasi, independen dari semua pertimbangan fisik. 2
Logical database design Proses mengkonstruksi model dari data yang
digunakan dalam suatu organisasi berdasarkan dari sebuah data model yang spesifik, tapi independen dari DBMS tertentu dan juga pertimbangan fisik lainnya. 3
Physical database design Proses
memproduksi
sebuah
deskripsi
dari
implementasi sebuah database pada media penyimpanan kedua. Fase ini mendeskripsikan relasi, organisasi file, dan juga index-index yang digunakan untuk mencapai
25
akses data yang efisien, dan semua Integrity Constraint dan Security Measures yang terasosiasi.
2.1.9.5 DBMS Selection Menurut Connolly & Begg, (2014, p. 359), seleksi DBMS adalah kegiatan memilih DBMS yang akan digunakan dalam pembuatan basis data. Pemilihan DBMS yang tepat sangat mendukung aplikasi basis data. Menurut Connolly & Begg, (2014, p. 360), langkah utama dalam pemilihan DBMS adalah sebagai berikut : 1. Mendefiniskan
waktu
untuk
melakukan
studi
referensi. 2. Mencatat 2 atau 3 jenis produk yang akan dievaluasi untuk digunakan. 3. Mengevaluasikan produk tersebut. 4. Merekomendasikan
produk
yang
dipilih
dan
membuat laporan yang mendukung DBMS tersebut.
2.1.9.6 Application Design Desain dari user interface dan juga program aplikasi yang menggunakan dan memproses database. Terdapat 2 aspek penting dalam perancangan aplikasi, yaitu : 1. Transaction Design Transaksi
merupakan
sebuah
tindakan
atau
seperangkat tindakan, yang dilakukan oleh pengguna atau program aplikasi, yang mengakses atau mengubah isi dari database. Ada tiga jenis transaksi : a) Retrieval Transaction Digunakan untuk mendapatkan kembali data untuk ditampilkan dalam suatu laporan. b) Update Transaction Digunakan untuk memasukkan data, menghapus data lama, atau mengubah data yang sudah ada dalam database.
26
c) Mixed Transaction Merupakan kombinasi antara Retrieval Transaction dan Update Transaction. 2. User Interface Design Guidelines Sebelum mengimplementasikan sebuah form atau laporan, penting bagi kita untuk terlebih dahulu mendesain tampilannya. Terdapat beberapa pedoman dalam merancang form atau laporan, yaitu : a) Judul yang bermakna. b) Instruksi yang mudah dipahami. c) Pengelompokkan yang logis dan kolom yang berurutan. d) Visualisasi tata letak yang menarik dari laporan. e) Nama field yang akrab. f) Terminologi dan singkatan yang konsisten. g) Warna yang digunakan konsisten. h) Ruang dan batas-batas untuk field memasukkan data jelas. i) Pergerakan kursor yang mudah. j) Perbaikan kesalahan untuk karakter individu dan seluruh field. k) Pesan kesalahan untuk nilai yang tidak dapat diterima. l) Field pilihan ditandai dengan jelas. m) Pesan yang jelas untuk field. n) Adanya sinyal selesai, ketika pengguna selesai mengisi field dari suatu formulir.
2.1.9.7 Prototyping Pembuatan model kerja dari sistem database. Terdapat 2 strategi untuk Prototyping, yaitu 1. Requirements Prototyping
27
Menggunakan sebuah Prototype untuk menentukan kebutuhan dari sistem database dan ketika kebutuhan sudah terpenuhi Prototype tidak digunakan lagi. 2. Evolutionary Prototyping Digunakan
untuk
tujuan
yang
sama,
namun
perbedaannya adalah Prototype yang sudah dipakai tidak dibuang, namun dikembangkan sehingga menjadi sistem Database yang baru.
2.1.9.8 Implementation Realisasi fisik dari database dan desain aplikasi. Implementasi database dapat dicapai menggunakan Data Definition Language (DDL) dari DBMS yang dipilih.
2.1.9.9 Data Conversion and Loading Proses mentransfer data yang sudah ada kedalam database baru dan mengubah aplikasi yang sudah ada untuk dijalankan pada database baru.
2.1.9.10 Testing Proses menjalankan sistem database dengan tujuan untuk menemukan error.
2.1.9.11 Operational Maintenance Proses mengawasi dan memelihara sistem database yang diikuti dengan instalasi.
2.1.10 Entity Relationship Modeiling ER-Modelling adalah sebuah pendekatan Top-down dari desain database yang dinilai dengan mengidentifikasi data penting yang
disebut
entitas
dan
relasi
direpresentasikan dalam sebuah model.
antara
data
yang
harus
28
2.1.10.1 Entity Types Sekumpulan objek dengan property yang sama, yang diidentifikasikan oleh perusahaan karena keberadaan yang bebas atau independen.
2.1.10.2 Relationship Types Relationship Types adalah seperangkat hubungan antar tipe entitas yang memiliki arti. Relationship Occurrence adalah sebuah hubungan yang unik, yang termasuk di dalamnya satu kejadian dari tiap-tiap tipe entitas yang berpartisipasi.
2.1.10.3 Attributes Properti dari sebuah entitas atau tipe relasi. Terdapat macam-macam atribut : 1. Simple Attribute and Composite Attribute Simple attribute adalah sebuah atribut yang terdiri dari komponen tunggal dengan keberadaan yang independen. Composite attribute adalah sebuah atribut yang terdiri dari berbagai macam komponen dengan keberadaan yang independen. 2. Single-Valued Attribute and Multi-Valued Attribute Single-valued attribute adalah sebuah atribut yang memegang nilai tunggal untuk tiap kejadian dari sebuah tipe entitas. Multi-valued attribute adalah sebuah atribut yang memegang berbagai macam nilai untuk tiap kejadian dari sebuah tipe entitas. 3. Keys Tipe-tipe dari Keys yaitu : a) Candidate Key Jumlah
minimal
atribut
yang
secara
unik
mengidentifikasi tiap kejadian dari sebuah tipe entitas. b) Primary Key
29
Sebuah
Candidate
Key
yang
dipilih
untuk
mengidentifikasi secara unik tiap kejadian dari sebuah tipe entitas. c) Composite Key Sebuah Candidate Key yang memiliki dua atribut atau lebih. d) Foreign Key Sebuah atribut atau kumpulan atribut dalam suatu relasi yang sesuai dengan Candidate Key yang berasal dari relasi yang sama. e) Alternate Key Sebuah Candidate Key yang tidak terpilih menjadi Primary Key.
2.1.10.4 Strong and Weak Entity Types Strong entity types adalah suatu entity yang tidak tergantung pada keberadaan beberapa jenis entitas lain Weak entity types adalah suatu jenis entitas yang keberadaannya tergantung pada beberapa jenis entitas lain
2.1.10.5 Structural Constraints Multiplicity merupakan sebuah jumlah (jangkauan) kejadian yang mungkin terjadi pada suatu tipe entitas yang mungkin terhubung pada satu kejadian dari tipe entitas yang berhubungan melalui suatu relasi.
30
1
One-to-One ( 1:1 )
Gambar 2.4 One-to-One (1:1) relationship 2
One-to-Many ( 1:* )
31
Gambar 2.5 One-to-Many (1:*) relationship 3
Many-to-Many ( *:* )
32
Gambar 2.6 Many-to-Many (*:*) relationship 4
Multiplicity for Complex Realtionship
Gambar 2.7 Multiplicity for Complex Relationship 5
Cardinality and Participation Constraints Cardinality adalah menggambarkan jumah maksimum
dari relasi yang mungkin terjadi untuk entitas yang terlibat dalam tipe relasi yang diberikan.
33
Participation adalah menetapkan apakah semua atau hanya satu kejadian entitas terlibat dalam sebuah relasi.
2.1.11 Normalisasi Menurut Connolly dan Begg (2010, p416), pengertian normalisasi adalah teknik untuk menghasilkan sejumlah relasi table dengan properties yang diinginkan, sesuai dengan kebutuhan data dari perusahaan. Dengan kata lain normalisasi merupakan proses mengubah suatu relasi yang memiliki masalah tertentu ke dalam dua relasi atau lebih yang tidak memiliki masalah tersebut. Masalah yang dimaksud itu sering disebut dengan istilah anomali.
2.1.11.1 Data Redudancy and Update Anomaly Anomali adalah efek samping yang tidak diharapkan (misalnya menyebabkan inconsistency (tidak konsisten) data atau membuat suatu data menjadi hilang saat data lain dihapus) yang muncul dalam suatu proses perancangan basis data. Suatu tujuan desain database relational yang utama adalah menggolongkan atribut ke dalam hubungan-hubungan untuk memperkecil data redundancy dan dengan demikian mengurangi tempat penyimpanan file yang diperlukan oleh hubungan-hubungan dasar yang diimplementasikan. Hubungan-hubungan yang memiliki data redundan mungkin memiliki masalah yang disebut update anomalies, yang diklasifikasikan sebagai insertion, deletion, atau modification anomalies.
2.1.11.2 Functional Dependency Functional Dependency
(ketergantungan
fungsional)
menguraikan hubungan antara atribut-atribut dalam sebuah relasi. Sebagai contoh, jika A dan B adalah relasi R, B adalah secara fungsional bergantung kepada A (A−>B), jika setiap nilai dari A diasosiasikan dengan tepat satu nilai dari B. (A dan B masing- masing boleh dari satu atau lebih atribut).
34
2.1.11.3 Bentuk Normal Normalisasi sering dieksekusi sebagai langkah-langkah yang berangkai/berseri. Bentuk normal adalah suatu aturan yang dikenakan pada relasi-relasi dalam basis data dan harus dipenuhi oleh relasi-relasi tersebut pada tingkatan normalisasi. Suatu relasi dikatakan berada dalam bentuk normal tertentu jika memenuhi kondisi-kondisi tertentu. Beberapa tingkatan yang biasa digunakan pada normalisasi adalah: 1. UNF Sebelum membahas bentuk normal yang pertama, kita mendefinisikan normal form awal yaitu Unnormalized Form (UNF). UNF adalah sebuah tabel yang berisi satu atau lebih kelompok data yang berulang. 2. Bentuk normal pertama (1NF) Bentuk
normal
pertama
adalah
hubungan
dimana
persimpangan dari setiap baris dan kolom berisi satu dan hanya satu nilai. Atau dengan kata lain, pada 1NF kita menghilangkan repetisi dan data yang merupakan hasil kalkulasi. 3. Bentuk normal kedua (2NF) Bentuk
normal
kedua
didefinisikan
berdasarkan
ketergantungan fungsional penuh (Full Functional Dependency). Full Functional Dependency menandai bahwa jika A dan B adalah atribut dari sebuah relasi, B adalah penuh secara fungsional tergantung pada A jika B adalah secara fungsional tergantung pada A, tetapi tidak pada semua subset dari A. Sedangkan 2NF adalah sebuah relasi antara bentuk normal pertama, dan setiap atribut bukan primary key adalah penuh secara fungsional bergantung pada primary key. Atau dengan kata lain, pada 2NF kita menghilangkan ketergantungan partial. 4. Bentuk normal ketiga (3NF) Bentuk
normal
ketiga
didefinisikan
berdasarkan
ketergantungan transitif (Transitive Dependency). Transitive Dependency adalah sebuah kondisi 27 dimana A, B, dan C adalah atribut-atribut dari relasi seperti jika A−>B dan
35
B−>C, maka C secara transitif bergantung pada A melalui B. (Dengan ketentuan bahwa A tidak secara fungsional bergantung pada B atau C). Sedangkan 3NF adalah sebuah relasi antara bentuk dan bentuk kedua, dan dimana tidak ada atribut yang bukan primary key secara transitif bergantung pada primary key. 5. Bentuk normal Boyce-Codd (BCNF) Menurut Connoly dan Begg (2010, p398) suatu relasi disebut memenuhi bentuk normal Boyce-Codd jika dan hanya jika semua penentu (determinan) adalah candidate key. BCNF merupakan bentuk normal sebagai perbaikan terhadap 3NF karena bentuk normal ketiga berkemungkinan masih memiliki anomali sehingga perlu dinormalisasi lebih jauh. Suatu relasi yang memenuhi BCNF selalu memenuhi 3NF, tetapi tidak untuk sebaliknya. Bentuk normal pertama hingga ketiga merupakan bentuk normal yang umum dipakai. Artinya, bahwa pada kebanyakan relasi bila ketiga bentuk normal tersebut telah dipenuhi maka persoalan anomali tidak akan muncul lagi. Bentuk normal BoyceCodd merupakan revisi terhadap bentuk normal ketiga. Bentuk normal keempat (4NF) dan kelima (5NF) hanya dipakai pada kasus-kasus khusus, yakni pada relasi yang mengandung banyak ketergantungan nilai.
2.1.12 Database Methodology Database Methodology adalah pendekatan terstruktur yang menggunakan prosedur, teknik, alat-alat, dan bantuan dokumentasi untuk mendukung dan menfasilitasi proses desain. Metodologi perancangan basis data terbagi dalam tiga tahap utama, yaitu : 2.1.12.1 Conceptual Database Design Conceptual Database Design adalah proses untuk membangun data model yang digunakan di dalam suatu perusahaan, independen dari semua pertimbangan fisik. Dalam
Conceptual
Database
Design
langkah
yang
36
dilakukan adalah dengan membangun Conceptual Data Model.
Langkah 1: Build Conceptual Data Model Tujuannya untuk membangun Conceptual Data Model terhadap kebutuhan data dari sebuah perusahaan. Langkahlangkah dalam Conceptual Data Model adalah sebagai berikut: a. Identify Entity Types Untuk mengidentifikasi tipe entitas yang diperlukan. b. Identify Relationship Types Untuk mengidentifikasi hubungan yang penting yang terjadi antar tipe entitas. c. Identify and Associate Attributes with Entity or Relationship Types Untuk mengasosiasikan attribut-attribut dengan tipe entitas atau relasi yang tepat. d. Detemining Attribute Domains Untuk menetapkan domain untuk attribut-attribut pada Conceptual Data Model. e. Detemine Candidate, Primary, and Alternate key Attributes Untuk mengidentifikasi Candidate Key untuk tiap tipe entitas dan, jika terdapat lebih dari satu Candidate Key, untuk memilih salah satu Candidate Key untuk menjadi Primary Key dan Candidate Key yang lain sebagai Alternate Keys. f. Consider
Use
of
Enchanced
Modelling
Concepts(Optional step) Untuk
mempertimbangkan
permodelan
seperti
penggunaan
spesialisasi
atau
konsep
generalisasi,
agregasi, dan komposisi. g. Check Model for Redudancy Untuk memeriksa keberadaan redundansi pada model.
37
h. Validate Conceptual Model against User Transaction Untuk
memastikan
bahwa
Conceptual
Model
mendukung transaksi yang diperlukan. i. Review Conceptual Data Model with User Untuk memeriksa Conceptual Data Model dengan pengguna untuk memastikan bahwa model tersebut secara tepat mengambarkan transaksi dan kebutuhan data secara nyata dalam perusahaan.
2.1.12.2 Logical Database Design Logical Database Design adalah proses membangun data model yang digunakan perusahaan berdasarkan pada data model spesifik tetapi independen terhadap DBMS tertentu dan pertimbangan fisik lainnya. Dalam Logical Database Design langkah yang dilakukan adalah dengan membangun dan validasi Logical Data Model.
Langkah 2: Build and Validate Logical Data Model Tujuannya untuk menterjemahkan Conceptual Data Model menjadi Logical Data Model dan kemudian menvalidasi model ini untuk memeriksa bahwa model ini terstruktur dengan baik dan dapat mendukung transaksi yang diperlukan. Langkah-langkah dalam membangun dan validasi Logical Data Model adalah sebagai berikut : 1
Derived Relations for Logical Data Model Untuk membuat hubungan pada Logical Data Model untuk merepresentasikan entitas-entitas, hubunganhubungan, dan attribut-attribut yang telah diidentifikasi.
2
Validate Relations Using Normalization Untuk menvalidasi hubungan-hubungan pada Logical Data Model menggunakan normalisasi.
3
Validate Relations against User Transaction
38
Untuk memastikan bahwa hubungan-hubungan pada Logical Data Model mendukung transaksi yang diperlukan. 4
Check Integrity Constraints Untuk
memeriksa
apakah
Integrity
Constraints
direpresentasikan pada Logical Data Model. 5
Review Logical Data Model with User Untuk menilai Logical Data Model dengan pengguna untuk memastikan bahwa pengguna mempertimbangkan model sebagai representasi terhadap persyaratan data pada perusahaan.
6
Merge Logical Data Model into Global Model(Optional Step) Untuk menggabungkan Logical Data Model local kedalam satu Logical Data Model global yang merepresentasikan semua User View pada database.
7
Check for Future Growth Untuk menetapkan apakah ada perubahan penting yang signifikan yang mungkin dapat terjadi di masa depan dan untuk menilai apakah Logical Data Model dapat menyesuaikan dengan perubahan tersebut.
2.1.12.3 Physical Database Design Physical Database Design adalah proses untuk menghasilkan deskripsi terhadap implementasi database pada penyimpanan sekunder, proses ini mendeskripsikan relasi-relasi dasar organisasi file dan index-index yang digunakan untuk mencapai akses yang efisien pada data, dan semua Integrity Constraint yang terasosiasi dan ukuran keamanan. Dalam membangun Physical Database Design langkah-langkah yang dilakukan adalah sebagi berikut :
Langkah 3: Translate Logical Data Model for Target DBMS
39
Tujuannya relasional
dari
untuk menghasilkan Logical
Data
skema
Model
database
yang
dapat
diimplementasikan pada target DBMS. Langkah-langkah dalam menterjemahkan Logical Data Model pada DBMS adalah: 1
Design Base Relations Untuk memutuskan bagaimana merepresentasikan relasi dasar yang diidentifikasikan dalam Logical Data Model pada target DBMS
2
Design Representation of Derived Data Untuk
memutuskan
bagaimana
merepresentasikan
semua data yang diwariskan yang terdapat pada Logical Data Model pada target DBMS. 3
Design General Constraints Untuk mendesain General Constraint pada target DBMS
Langkah 4: Design File Organization and Indexes Tujuannya untuk menentukan organisasi file yang optimal untuk menyimpan relasi dasar dan indeks yang diperlukan untuk mencapai performa yang dapat diterima, dimana tiap relasi dan tuple akan disimpan pada penyimpanan sekunder. Langkah-langkah dalam mendesain organisasi file dan indeks adalah : 1
Analyze Transaction Untuk memahami fungsionalitas dari transaksi yang akan berjalan pada database dan untuk menganalisa transaksi-transaksi yang penting.
2
Choose File Organization Untuk menentukan organisasi file yang efisien untuk tiap relasi dasar.
3
Choose Indexes Untuk menentukan apakah indeks yang ditambahkan akan meningkatkan performa dari sistem.
40
4
Estimate Disk Space Requirements Untuk memperkirakan jumlah kapasitasi disk yang diperlukan oleh database.
Langkah 5: Design User Views Tujuannya
untuk
mendesain
User
View
yang
diidentifikasikan pada tahap Requirements Collection and Analysis pada Database System Development LifeCyle.
Langkah 6: Design Security Mechanisms Tujuannya untuk mendesain mekanisme keamanan untuk database sesuai yang dispesifikasikan oleh pengguna pada tahap Requirement and Collection pada Database Development System LifeCycle.
Langkah 7: Consider the Introduction of Controlled Redundancy Tujuannya untuk menetapkan apakah menggunakan redundansi dalam pengontrolan dengan menggunakan aturan normalisasi akan meningkatkan performa dari sistem atau tidak.
Langkah 8: Monitor and Tune the Operational System Tujuannya untuk memonitor sistem operasi dan meningkatkan performa sistem untuk mengoreksi keputusan perancangan yang tidak tepat atau refleksi kebutuhan perubahan.
2.1.13 Fact Finding Technique Menurut Thomas Connolly dan Carolyn Begg (2010, p344347), teknik yang digunakan adalah teknik pencarian fakta (fact finding technique). Teknik pencarian fakta yang digunakan dalam penulisan skripsi ini, yaitu : 1. Memeriksa Dokumentasi (Examining Documentation)
41
Dokumentasi
diperlukan
untuk
menyediakan
informasi
perusahaan yang berkaitan dengan masalah yang dihadapi dengan cara mempelajari dokumen-dokumen, laporan dan file yang berkaitan dengan sistem yang ada. 2. Wawancara (Interviewing) Wawancara merupakan suatu teknik untuk memperoleh informasi dari sumbernya secara langsung. Keuntungannya adalah untuk menemukan
fakta
dan
mengidentifikasi
kebutuhan,
serta
memperoleh ide-ide secara langsung dari sumbernya. 3. Mengamati Perusahaan Dalam Operasinya (Observing the Enterprise in Operation) Observasi merupakan teknik yang secara langsung digunakan untuk memantau dan mempelajari tindakan seseorang untuk memahami sebuah sistem dengan cara terjun langsung ke lapangan. 4. Riset (Research) Melakukan riset terhadap suatu masalah yang sedang dihadapi. Hasil riset dapat menyediakan informasi-informasi penting tentang bagaimana orang lain memecahkan masalah yang serupa dengan teknik-teknik tertentu. 5. Kuisioner (Questionnaires) Kuisioner adalah sebuah teknik dengan pengunaan dokumen yang diberikan langsung kepada beberapa orang yamg biasa disebut koresponden untuk memperoleh fakta-fakta yang berkaitan dengan sistem. Teknik ini merupakan teknik yang paling efisien untuk memperoleh informasi dari banyak orang.
2.2 Teori Khusus 2.2.1 Pengertian Pembelian Menurut Render (2011, p. 414), pembelian adalah perolehan barang dan jasa. Secara umum defenisi pembelian adalah suatu usaha pengadaan barang atau jasa dengan tujuan yang akan digunakan sendiri, untuk kepentingan proses produksi maupun untuk dijual kembali.
42
Menurut Arjan J. Van Weele (2010, p. 8), bahwa setiap perusahaan membutuhkan fungsi proses sistem pembelian yang melibatkan penentuan pembelian barang, pemilihan pemasok yang baik, evaluasi harga yang tepat, menetapkan syarat dan kondisi yang berlaku serta menindaklanjuti pihak yang berkepentingan untuk memastikan pengiriman barang tepat waktu dan sistem pembayaran barang serta pemantauan dan pengendalian untuk mengamankan pasokan barang, sedangkan menurut En, Tan Kwang (2011, p. 9), pengendalian internt atas siklus pembelian terdiri dari: a. Processing Purchase Order Fungsi ini dimulai dari permintaan pembelian. Pengendalian intern ini terdiri dari: -
Adanya otorisasi yang sesuai untuk menjamin bahwa setiap pembelian
barang/jasa
sesuai
denagn
kebutuhan
perusahaan -
Setelah pembelian disetujui, harus ada pengajuan order untuk membeli barang/jasa
-
Bagian pembelian sebaiknya tidak bertanggung jawab untuk mengotorisasi penerimaan barang
-
Semua order pembelian diberi nomor urut dan mempunyai kolom serta ruang untuk meminimumkan kemungkinan kehilangan yang tidak disengaja atas formulir tersebut pada saat pemesaan dilakukan
b. Receiving Goods And Services -
Adanya bagian penerimaan barang yang bertugas untuk membuat laporan penerimaan barang sebagai bukti barang telah diterima dan diperiksa
-
Adanya
pengawasan fisik
atas
barang
mulai
saat
penerimaan sampai saat penggunaanya untuk mencegah terjadinya pencurian dan penggunaa tidak tepat -
Pegawai bagian penerimaan sebaiknya terpisah dengan bagian gudang dan akuntansi
c. Recognizing The Ability -
Adanya dokumen yang cukup dan pencatatan yang akurat
43
-
Adanya prosedur penanganan pembukuan yang tepat
-
Pegawai yang mencatat pengeluaran kas tidak akses terhadap kas/aktiva lainnya
d. Processing And Recording Cash Disbursement -
Adanya penandatangan setiap cek oleh orang yang memiliki otorisasi
-
Adanya
pemisahan
tanggung
jawab
antara
yang
menandatangani cek dengan yang menandatangani hutang -
Adanya pemeriksaan yang teliti atas setiap dokumen pendukung oleh penandatanganan cek sebelum cek tersebut ditandatangani
-
Setiap cek memiliki nomor urut
-
Adanya pengawasan fisik atas blanko cek, cek yang telah dibatalkan, dan cek yang telah ditandatangani
Menurut Sofian (2010, p. 2), pembelian secara umum dapat dikategorikan sebagai berikut: a. Pembelian Tunai Pembelian yang pelunasannya dilakukan pada saat terjadinya transaksi. b. Pembelian Kredit Pembelian
dilakukan
secara
berkala
sesuai
dengan
kesepakatan pihak penjual dan pembeli.
2.2.2 Pengertian Penjualan Menurut Angelina (2011, p. 49), penjualan adalah jumlah yang dibebankan kepada pelanggan untuk barang yang dijual, baik secara tunai maupun kredit, sedangkan menurut Mahyudin (2010, p. 186), berpendapat bahwa penjualan merupakan kegiatan yang bertujuan agar produk periklanan yang ditawarkan kepada konsumen terbeli dengan harga yang layak.Sehingga dapat disimpulkan bahwa penjualan adalah kegiatan langsung dengan konsumen yang bertujuan agar produk yang ditawarkan terbeli dengan harga yang sesuai, sedangkan menurut Mulyadi (2011, p. 202), kegiatan penjualan terdiri dari penjualan barang dan jasa, baik secara kredit, ataupun tunai.
44
dalam transaksi penjualan kredit, jika order pelanggan telah terpenuhi dengan pengiriman barang atau penyerahan jasa untuk jangka waktu tertentu perusahaan memiliki piutang kepada pelanggannya. Dalam transaksi penjualan secara tunai, barang atau jasa baru diserahkan oleh perusahaan kepada pembeli, jika perusahaan telah menerima kas dari pembeli, sedangkan menurut Arta M. (2010, p. 958), dokumen yang dibutuhkan dalam siklus pendapatan perusahaan dagang: c. Sales order Sales order adalah form formal yang memiliki banyak copy yang dipersiapkan dari customer. d. Shipping notice Shipping notice biasanya merupakan copy dari sales order atau dokumen pengiriman terpisah yang berfungsi sebagai bukti bahwa barang telah dikirimkan. e. Sales invoice Sales invoice adalah dokumen yang dikirimkan ke pelanggan untuk menyatakan berapa jumlah penjualan. f. Remitance advice Remitance advice adalah dokumen yang menunjukkan jumlah penerimaan kas dari pelanggan. g. Deposit slip Deposit slip adalah dokumen yang menyertai penyetoran kas ke bank. h. Back order Back order adalah dokumen yang dipersiapkan ketika kuantitas dari persediaan tidak mencukupi sales order. i. Credit memo Credit
memo
adalah
dokumen
yang
memungkinkan
pengurangan kredit pelanggan untuk pengembalian penjualan atau penyisihan penjualan. j. Credit application Credit application adalah sebuah form yang dipersiapkan ketika pelanggan baru mengajukan kredit. k. Cash register receipt
45
Cash register receipt adalah form yang digunakan oleh retailer untuk mencerminkan kas yang diterima.
2.2.3
Pengertian Persediaan Menurut Ikatan Akuntan Indonesia (IAI), (2012), persediaan adalah asset tersedia untuk dijual dalam kegiatan usaha biasa, dalam proses produksi untuk penjualan tersebut, atau dalam bentuk bahan atau perlengkapan untuk digunakan dalam proses produksi atau pemberian jasa. Secara umum, persediaan mencakup barang yang dibeli dan dimiliki untuk dijual kembali, atau bahan serta perlengkapan yang akan digunakan dalam proses produksi, sedangkan menurut Sofian (2010), Persediaan bertujuan untuk mencatat semua barang masuk dan keluar tiap jenis persediaan yang disimpan di gudang. Persediaan berkaitan erat dengan pembelian dan penjualan, sedangkan menurut Rahmayati (2013, p. 317), persediaan pada prinsipnya adalah sumber daya yang menganggur (idle resources) yang menunggu proses lebih lanjut, sedangkan menurut Difana Meilani (2013, p. 327), persediaan dapat didefinisikan sebagai bahan yang disimpan dalam gudang untuk kemudian digunakan atau dijual, sedangkan menurut Michel Chandra Teurah, (2014), Persediaan merupakan kekayaan perusahaan yang memiliki peranan penting dalam operasi bisnis, sehingga perusahaan perlu melakukan manajemen proaktif, artinya perusahaan harus mampu mengantisipasi keadaan maupun tantangan yang ada dalam manajemen persediaan untuk mencapai sasaran akhir, yaitu untuk meminimalisasi total biaya yang
harus
dikeluarkan
oleh
perusahaan
untuk
penanganan
persediaan, sedangkan menurut Rifai A, Sarno R, dan Sunaryono D, (2011), Persediaan (Inventory) adalah sistem manajemen dalam menentukan keseimbangan antara investasi penyimpanan persediaan dengan pelayanan pelanggan.
2.2.4
Pengertian Retur Penjualan Menurut Mulyadi (2010 : p. 226), retur penjualan terjadi jika perusahaan
menerima
pengembalian
barang
dari
pelanggan,
46
sedangkan Menurut Stice (2010 : p. 327), retur penjualan beberapa barang, akan dikembalikan oleh pelanggan dan beberapa tunjangan harus dibuat untuk faktor-faktor seperti barang yang rusak selama pengiriman, barang lain yang rusak, atau pengiriman kuantitas atau jenis barang yang salah. Menurut James A. Hall (2011), retur penjualan adalah kemungkinan pengembalian barang yang dibeli oleh pelanggan sewaktu – waktu, yang terjadi karena disebabkan beberapa hal sebagai berikut: l. Penjualan mengirimkan barang dagangan dengan tidak sesuai m.Barang dagangan rusak atau cacat n. Barang dagangan rusak pada saat pengangkutan o. Penjualan Mengirim barang dagangan terlalu lama atau terjadi penundaan pengangkutan dan pembeli menolak pengiriman.
2.2.5
Pengertian Retur Pembelian Menurut Mulyadi (2010: p. 335-336), barang yang sudah diterima dari pemasok adakalanya tidak sesuai dengan barang yang dipesan menurut surat order pembelian. Ketidaksesuaian tersebut terjadi kemungkinan karena barang yang diterima tidak cocok dengan spesifikasi yang tercantum dalam surat order pembelian, barang mengalami kerusakan dalam pengiriman, atau barang yang diterima melewati tanggal pengiriman yang dijanjikan oleh pemasok. Sistem retur pembelian digunakan dalam perusahaan untuk pengembalian barang yang sudah dibeli kepada pemasoknya.
2.3 Analisa dan Perancangan Sistem Informasi 2.3.1 Pengertian Analisa Sistem Menurut Satzinger dkk, (2013, p. 5), Analisis Sistem adalah kegiatan yang memungkinkan seseorang untuk memahami dan menentukan
kebutuhan
untuk
sistem
baru.
Analisis
sistem
menjelaskan secara rinci "apa" bahwa sistem yang harus dilakukan untuk memenuhi kebutuhan atau untuk memecahkan masalah
2.3.2
Pengertian Perancangan Sistem
47
Menurut Satzinger dkk, (2013, p. 5), Perancangan Sistem adalah kegiatan yang memungkinkan seseorang untuk mendefinisikan dan menjelaskan secara rinci sistem yang memecahkan kebutuhan 2.3.3
The Requirement Discipline a. Activity Diagram Menurut Satzinger dkk. (2013, p. 57), Activity Diagram adalah diagram yang menggambarkan kegiatan pengguna (atau system) dan menggambarkan aliran kegiatan yang berurutan. Menurut Satzinger dkk. (2013, p. 57), Notasi yang berbentuk oval dari activity diagram di atas biasa disebut dengan activity. Notasi ini menggambarkan kegiatan individu dalam alur kerja. Menurut Satzinger dkk. (2013, p. 57), Notasi transition arrow mempresentasikan urutan antara activity. Menurut Satzinger dkk. (2013, p. 57), Notasi yang berbentuk lingkaran hitam di awal dari activity diagram menggambarkan awal dimulai activity diagram, sedangkan lingkaran hitam di akhir menggambarkan akhir dari activity diagram. Menurut Satzinger dkk. (2013, p. 57), Synchronization Bar adalah suatu symbol yang digunakan dalam activity diagram untuk mengontrol pembagian atau penggabungan dari urutan jalur. Menurut Satzinger dkk. (2013, p. 57), Swimlane heading adalah suatu area yang berbentuk kotak pada activity diagram yang merepresentasikan aktivitas yang diselesaikan oleh seorang agen. Menurut Satzinger dkk. (2013, p. 57), Notasi yang berbentuk diamond biasa disebut dengan decision symbol. Notasi ini merepresentasikan beberapa alternatif alur.
48