BAB 2
LANDASAN TEORI
2.1 Teori Umum 2.1.1
Sistem
Sistem adalah sekumpulan dari komponen yang saling berhubungan dan bekerja sama untuk mencapai tujuan bersama dengan menerima input dan menghasilkan output dalam suatu organisasi (O’Brien, 2003, p8). Lebih lanjut pemahaman tentang sistem pertama kali dapat diperoleh dari pengertian dan definisinya. Dengan demikian definisi ini akan mempunyai peranan yang sangat penting dalam melakukan pendekatan terhadap sistem yang akan dianalisis. 2.1.1.1 Karakteristik Sistem Suatu sistem mempunyai karakteristik atau sifat-sifat tertentu, yaitu mempunyai komponen-komponen, batas sistem, lingkungan luar sistem, penghubung, masukan, keluaran, pengolah dan sasaran atau tujuan (Al-Bahra Bin Ladjamudin, 2005, p3). 1. Komponen Sistem Suatu sistem terdiri dari sejumlah komponen yang saling berinteraksi, yang artinya saling bekerja sama membentuk suatu kesatuan. Komponenkomponen sistem atau elemen-elemen sistem dapat berupa suatu subsistem atau bagian-bagian dari sistem.
6
7 Setiap subsistem mempunyai karakteristik dari sistem yang menjalankan suatu fungsi tertentu dan mempengaruhi proses sistem secara keseluruhan. 2. Batasan Sistem Batas sistem merupakan daerah yang membatasi antara suatu sistem dengan sistem yang lainnya atau dengan lingkungan luarnya. Batas sistem ini memungkinkan suatu sistem dipandang sebagai suatu kesatuan dan menunjukkan ruang lingkup dari sistem tersebut. 3. Lingkungan Luar Sistem Lingkungan luar dari suatu sistem adalah apapun di luar batas dari sistem yang mempengaruhi operasi sistem. Lingkungan luar sistem dapat bersifat menguntungkan dan juga merugikan. Lingkungan luar yang menguntungkan merupakan energi dari sistem dan dengan demikian harus dijaga dan dipelihara. Sedangkan lingkungan luar yang merugikan harus ditahan dan dikendalikan, jika tidak maka akan mengganggu kelangsungan hidup dari sistem. 4. Penghubung Sistem Penghubung merupakan media yang menghubungkan antara satu subsistem dengan subsistem yang lainnya. Melalui penghubung ini kemungkinan sumber-sumber daya mengalir dari satu subsistem ke subsistem yang lainnya. Keluaran dari satu subsistem akan menjadi masukan untuk subsistem lainnya melalui penghubung. Dengan
8 penghubung, satu subsistem dapat berintegresi dengan subsistem lainnya membentuk satu kesatuan. 5. Masukan Sistem Masukan sistem adalah energi yang dimasukkan ke dalam sistem. Masukan dapat berupa masukan perawatan dan masukan sinyal. Masukkan perawatan adalah energi yang dimasukkan supaya sistem tersebut dapat berjalan. Masukkan sinyal adalah energi yang diproses untuk mendapatkan keluaran dari sistem. 6. Keluaran Sistem Keluaran sistem adalah energi yang diolah dan diklasifikasikan menjadi keluaran yang berguna. Keluaran dapat merupakan masukan untuk subsistem yang lain. 7. Pengolahan Sistem Suatu sistem dapat mempunyai suatu bagian pengolah atau sistem itu sendiri sebagai pengolahnya. Pengolah yang akan merubah masukan menjadi keluaran. 8. Sasaran Sistem Suatu sistem mempunyai tujuan atau sasaran, kalau sistem tidak mempunyai sasaran maka sistem tidak akan ada. Suatu sistem dikatakan berhasil bila mengenai sasaran atau tujuannya. Sasaran sangat berpengaruh pada masukan dan keluaran yang dihasilkan.
9 2.1.1.2 Sistem Informasi Menurut Al-Bahra Bin Ladjamudin (2005, p13), sistem informasi dapat didefinisikan sebagai berikut. 1. Suatu sistem yang dibuat oleh manusia yang terdiri dari komponenkomponen dalam organisasi untuk mencapai suatu tujuan yaitu menyajikan informasi. 2. Sekumpulan prosedur organisasi yang pada saat dilaksanakan akan memberikan informasi bagi pengambil keputusan dan atau untuk mengendalikan organisasi. 3. Suatu sistem didalam suatu organisasi yang mempertemukan kebutuhan pengolahan transaksi, mendukung operasi, bersifat manajerial, dan kegiatan strategi dari suatu organisasi dan menyediakan pihak luar tertentu dengan laporan-laporan yang diperlukan. Organisasi menggunakan sistem informasi untuk mengolah transaksitransaksi, mengurangi biaya dan menghasilkan pendapatan sebagai salah satu produk atau pelayanan mereka.
2.1.2 Basis Data Basis data merupakan kumpulan data yang saling berhubungan, dan deskripsi dari data tersebut yang dirancang untuk memenuhi kebutuhan informasi dari suatu organisasi (Connoly, 2002, p14). Deskripsi dari data dikenal sebagai sistem katalog (data dictionary atau meta-data), seperti nama, tipe dan ukuran data. Basis data merupakan kumpulan dari beberapa tabel (Ridwan Sanjaya dan Onno W. Purba, 2002, p21).
10 Untuk menganalisa basis data yang diperlukan perusahaan, diperlukan pembuatan entiti, atribut, dan hubungan dari basis data. 1. Entiti adalah objek unik dalam perusahaan yang ada di dalam basis data. 2. Atribut adalah properti (kepunyaan) yang menjelaskan entiti-entiti. 3. Relationship adalah hubungan antara entiti.
2.1.3 DBMS (Database Management System) DBMS adalah sistem piranti lunak yang mengatur hal-hal yang berhubungan (define, create, maintain, dan kontrol akses) dengan basis data (Connoly, 2002, p16). 1. DBMS mempunyai fungsi-fungsi sebagai berikut: a. Mendefinisikan basis data melalui DDL (Data Definition Language). b. Menyimpan (insert), mengubah (update), menghapus (delete) dan menampilkan (select) data dari basis data melalui DML (Data Manipulation Language). c. DBMS memberikan akses terkontrol ke dalam basis data melalui sistem keamanan (secutiy), sistem integritas (integrity), dan sistem pemulihan (recovery). 2. DBMS mempunyai lima komponen pendukung utama, yaitu : a. Perangkat keras Untuk menjalankan DBMS dibutuhkan perangkat keras seperti personal computer, mainframe, dan jaringan komputer. Perangkat tersebut digunakan sesuai kebutuhan perusahaan.
11 b. Piranti Lunak Terdiri dari DBMS, sistem operasi, program jaringan, dan program pendukung yang ditulis dalam 3GL (Third Generation Language) seperti C, C++, Java, Visual Basic dan 4GL (Fourth Generation Language) seperti SQL (Structured Query Language) yang telah ada dalam 3GL. c. Data Sebagai penghubung antara komponen mesin dan komponen manusia. Basis Data mempunyai data dan meta-data. Struktur dari basis data disebut schema. d. Prosedur Aturan-aturan yang mengatur perancangan dan penggunaan dari basis data. Aturan-aturan tersebut antara lain menentukan bagaimana : •
Login ke DBMS
•
Menggunakan aplikasi DBMS
•
Menjalankan dan menghentikan DBMS
•
Menangani kerusakan perangkat lunak dan keras
•
Merubah struktur tabel
e. Manusia Manusia yang terlibat di dalam penggunaan DBMS, yaitu Database Administrators, Application Developer, Database Designer, dan EndUser. 3. DBMS memiliki keuntungan-keuntungan sebagai berikut : a. Mengurangi redundancy
12 b. Tidak menyimpan data atau informasi yang sama lebih dari satu kali sehingga memperbanyak ruang penyimpanan data. c. Memiliki Data yang konsisten d. Dengan mengurangi redundancy, data yang tidak konsisten menjadi berkurang. Jika satu data disimpan sekali maka update terhadap data tersebut hanya dilakukan sekali. e.
Sharing dari data
f. Setiap perusahaan yang memiliki basis data, dapat di share ke semua user-nya yang mendapat izin dari perusahaan g. Meningkatkan integrity dari data h. Data yang disimpan harus sesuai dengan constraints (aturan–aturan basis data yang tidak boleh dilanggar). Integrity ditentukan oleh DBA (Database Administrators) i. Meningkatkan keamanan j. Melindungi basis data dari user yang tidak mempunyai hak akses ke basis data tersebut. Keamanan Basis data ditentukan oleh DBMS (Database Management System) dengan memasukkan user name dan password untuk melihat hak aksesnya (read, inser, update, dan delete) 4. DBMS juga memiliki kelemahan-kelemahan, antara lain : a. Kompleksitas Fungsi DBMS yang banyak dan lengkap membuat DBMS menjadi suatu piranti lunak yang kompleks. Oleh karena itu, DBA (Database Administrator)
harus
mengerti
fungsi-fungsi
perancangan basis data dapat dilakukan dengan benar.
tersebut
sehingga
13 b. Size Kompleksitas dari DBMS menyebabkan ukurannya menjadi besar sehingga membutuhkan banyak ruang hard disk dan kapasitas memori yang besar. c. Biaya hardware tambahan Untuk mencapai kinerja DBMS yang diinginkan oleh perusahaan, terkadang diperlukan komputer yang lebih besar kemampuannya seperti membeli hard disk yang besar untuk menyimpan data lebih banyak. d. Biaya konversi Biaya hardware dan DBMS mungkin tidak sebanding dengan biaya konversi. Biaya ini membutuhkan biaya pelatihan karyawan perusahaan untuk menjalankan DBMS yang baru atau karyawan spesialis untuk menkonversi dan menjalankan sistem tersebut. e. Performance DBMS dibuat untuk melakukan banyak aplikasi dan bukan untuk menjalankan aplikasi tertentu. Hal ini mengakibatkan kinerja DBMS menjadi lambat.
2.1.4 DDL (Data Definition Language) DDL adalah sub-bahasa SQL yang digunakan oleh Database Administrators untuk menjelaskan dan memberi nama pada entiti, atribut, dan hubungannya yang dibutuhkan oleh aplikasi basis data, serta menentukan integrity dan constraint dari basis data (Connoly, 2002, p40). Perintah yang digolongkan dalam DDL adalah CREATE yang digunakan untuk membuat struktur tabel yang dimasukkan kedalam
14 basis data, ALTER digunakan untuk mengubah struktur tabel yang telah dibuat, dan DROP digunakan untuk menghapus struktur tabel yang tidak digunakan.
2.1.5 DML (Data Manipulation Language) DML adalah subbahasa SQL yang menyediakan kumpulan operasi (read, insert, update, delete) untuk melakukan manipulasi data dalam basis data (Connoly, 2002, p41). Perintah yang digolongkan kedalam DML adalah SELECT yang digunakan untuk mengambil data dari tabel, UPDATE digunakan untuk mengubah data dari tabel yang ditentukan, INSERT digunakan untuk mengisi record baru ke dalam tabel, dan DELETE digunakan untuk menghapus record pada tabel yang ditentukan.
2.1.6 DCL (Data Control Language) DCL adalah sub-bahasa SQL untuk memberikan keamanan terhadap basis data dan tabelnya digunakan DCL. Dua perintah yang digunakan dalam DCL adalah GRANT dan REVOKE (Ridwan Sanjaya dan Onno W.Purba, 2002, p43). Perintah yang digolongkan dalam DCL adalah GRANT yang digunakan untuk memberikan hak akses terhadap pengguna basis data, dan REVOKE digunakan untuk menghilangkan hak akses yang telah dibuat sebelumnya.
15 2.1.7 Daur Hidup Aplikasi Basis Data Menurut Connoly (2002, p272), daur hidup aplikasi basis data bukan merupakan tahapan yang berurutan, namun melibatkan perulangan ke tahap sebelumnya melalui feed back loops. Berikut adalah gambaran keseluruhan mengenai daur hidup aplikasi basis data :
Gambar 2.1 : Daur Hidup Aplikasi Basis Data
16 2.1.7.1 Perencanaan Basis Data Perencanaan basis data harus terintegrasi dengan strategi sistem informasi organisasi secara keseluruhan. Berikut ini terdapat hal-hal yang berhubungan dengan strategi sistem informasi : 1. Menentukan tujuan, perencanaan, dan kebutuhan sistem informasi perusahaan. 2. Mengevaluasi sistem informasi yang sedang berjalan sekarang untuk menentukan kekuatan dan kelemahan sistem tersebut.
2.1.7.2 Definisi Sistem Sebelum merancang aplikasi basis data, sangat perlu untuk menentukan ruang lingkup dan batasan dari aplikasi basis data dan user view. User view mendefinisikan apa yang dibutuhkan dari aplikasi basis data dari sudut pandang user berdasarkan tingkatan struktur organisasi.
2.1.7.3 Analisis dan Pengumpulan Kebutuhan Suatu proses pengumpulan dan analisa informasi tentang bagian dari organisasi yang harus didukung oleh aplikasi basis data, dan menggunakan informasi tersebut untuk menentukan kebutuhan user pada sistem baru yang akan dibuat. Teknik-teknik yang digunakan untuk mengumpulkan informasi disebut teknik fact-finding. Terdapat 5 teknik fact-finding (Connoly, 2002, p305) yang umum digunakan, yaitu : 1. Mempelajari dokumentasi
17 2. Interview atau wawancara 3. Penelitian Langsung 4. Studi Kepustakaan 5. Kuesioner
2.1.7.4 Perancangan Basis Data 2.1.7.4.1 Konseptual Proses perancangan model informasi perusahaan yang tidak tergantung kepada pertimbangan fisik. Langkah-langkah perancangan konseptual, yaitu : 1. Menentukan entiti utama yang dibutuhkan berdasarkan kebutuhan user. 2. Menentukan hubungan utama antara entiti. 3. Menentukan dan menggabungkan atribut-atribut dengan entiti. Cara menentukan atribut-atribut adalah dengan mencari kata benda di dalam daftar kebutuhan user. (Connoly, 2002, p427). Ada tiga jenis atribut dalam dalam domain atribut, antara lain : a. Single Attributes Atribut yang mempunyai tepat satu nilai dalan satu tabel. b. Multi-valued Attributes Multi-valued attributes adalah atribut yang mempunyai banyak nilai dalam satu tabel di dalam basis data. c. Derived Attributes
18 Derived attributes adalah atribut-atribut yang nilainya tergantung dari nilai dari atribut-atribut lainnya. 4. Menentukan domain atribut Tujuan dari langkah ini adalah menentukan domain untuk atributatribut di dalam model data konseptual lokal (Connoly, 2002, p430). 5. Menentukan atribut-atribut candidate key dan primary key Langkah ini bertujuan untuk menentukan satu atau lebih candidate key yang dijadikan primary key. Primary key adalah atribut yang unik dari suatu entiti. (Connoly, 2002, p431) 6. Memeriksa model data yang redudancy Langkah-langkah untuk menentukan redudancy : a. Memeriksa hubungan satu-satu (1:1) Dalam identifikasi entiti, kita mungkin telah mengidentifikasi dua entiti yang merepresentasikan objek yang sama. b. Membuang hubungan redudancy Suatu hubungan dinyatakan redundancy jika informasi yang sama dapat diperoleh melalui hubungan dengan entiti yang lain. 7. Validasi model konseptual lokal terhadap transaksi user Memastikan model data konseptual lokal mendukung transaksi yang dibutuhkan oleh user. Dua pendekatan untuk langkah diatas, yaitu: a. Mendeskripsikan transaksi Mendeskripsikan
semua
informasi
dibutuhkan untuk setiap transaksi. b. Menggunakan path transaksi.
dan
kebutuhan
yang
19 Membuat path atau jalur pada model data konseptual lokal yang sesuai dengan alur kebutuhan dari pengguna. 8. Me-review model data konseptual lokal dengan user Melihat kembali model data konseptual lokal dengan user untuk meyakinkan bahwa model tersebut merupakan representasi yang benar.
2.1.7.4.2 Logikal Suatu proses perancangan model informasi perusahaan yang tidak tergantung kepada DBMS tertentu dan pertimbangan fisik. Berikut adalah langkah-langkah dalam perancangan logikal basis data: 1. Menghilangkan fitur yang tidak kompatibel dengan model relasi. Dalam tahap ini, terdapat 4 langkah yang dapat dilakukan, yaitu : a. Menghilangkan tipe relasi biner many to many (*:*) Menentukan suatu entiti baru diantara kedua entiti yang memiliki tipe relasi many to many tersebut. Sehingga menghasilkan tipe relasi one to many dengan entiti yang baru. b. Menghilangkan tipe relasi many to many (*:*) rekursif Relasi
rekursif
terjadi
jika
entiti
memiliki
relasi
yang
menghubungkan ke entiti itu sendiri. Untuk menyelesaikan hal tersebut, dapat dengan cara pembuatan satu weak entiti, lalu mengkombinasikan dengan dua entiti sebelumnya dengan tanpa kehilangan relasi tersebut. c. Menghilangkan tipe relasi yang kompleks
20 Relasi yang kompleks yang dimaksud adalah relasi antar tiga atau lebih entiti yang dependent dengan entiti yang terhubung didalamnya. Dari antar relasi tersebut, dibuat satu weak entiti dengan tidak menghilangkan .relasi sebelumnya terjadi. d. Menghilangkan atribut yang multi-valued Atribut multi-valued yang dimaksud adalah satu entiti memiliki atribut
yang
memiliki
informasi
lebih
dari
satu.
Cara
penyelesaiannya adalah memisahkan atrbut tersebut menjadi entiti baru dan terhubung dengan entiti yang sebelumnya. 2. Menghasilkan relasi untuk model data logikal lokal Tujuan yang diharapkan adalah menciptakan tabel untuk model data lokal logikal untuk merepresentasikan entiti, relationship, dan atribut yang telah diidentifikasi. Kita mendeskripsikan komposisi setiap entiti dengan menggunakan Database Definition Language (DBDL). Dengan menggunakan DBDL, kita menspesifikasikan nama entiti yang diikuti dengan list atribut lalu mengidentifikasikan primary key, dan atau foreign key. Kita mengidentifikasikan pula entiti yang merupakan referensi dari foreign key. Berikut adalah deskripsi bagaimana relasi dapat dihasilkan dari struktur yang ada pada model data : a. Strong entity types Adalah entiti yang memiliki atribut unik sebagai primary key yang mendeskripsikan entiti tersebut. b. Weak entity types
21 Adalah entiti yang tidak memiliki atribut unik, melainkan atribut yang merupakan referensi dan dependent dengan entiti yang lain. c. Tipe relasi biner one to many (1:*) Untuk setiap relasi tersebut, entiti yang berada pada sisi pertama (one side) dari relasi, merupakan parent entity dan entiti kedua (many side) sebagai child entity. Dalam mempresentasikan relasi tersebut, kita mengirimkan copy atribut primary key dari parent entity kedalam child entity sebagai foreign key. d. Tipe relasi biner one to one (1:1) Untuk setiap relasi tersebut, kita mengirimkan copy atribut primary key dari parent entity kedalam child entity sebagai foreign key.. e. Tipe relasi Superclass / Subclass Untuk relasi superclass / subclass dalam model data konseptual, kita mengidentifikasikan entiti superclass sebagai parent entity dan entiti subclass sebagai child entity. f.
Tipe relasi biner many to many (*:*) Untuk relasi biner many to many (*:*), direpresentasikan dengan membuat entiti baru yang berisikan atribut primary key yang merupakan copy dari masing-masing entiti sebagai foreign key.
g. Tipe relasi kompleks Untuk setiap relasi kompleks, buat relasi yang merepresentasikan relationship dan termasuk didalamnya atribut yang merupakan bagian dari relationship. Kita memasukkan salinan atribut
22 primary key dari entiti yang tergabung didalam relasi yang kompleks ke dalam relasi yang baru, bertindak sebagai foreign key. h. Atribut Multi-valued Untuk setiap atribut yang multi-valued dalam entiti, buat relasi baru untuk representasi atribut yang multi-valued dan termasuk didalamnya primary key pada entiti tersebut pada relasi yang baru, bertindak sebagai foreign key. 3. Memeriksa tabel-tabel dengan normalisasi Normalisasi adalah suatu teknik untuk menghasilkan satu kumpulan tabel dengan properti yang diinginkan dan sesuai dengan kebutuhan user. (Connoly, 2002, p376) Proses normalisasi terdapat beberapa langkah utama, yaitu: a. First Normal Form (1NF), menghilangkan repeating group, dimana satu entiti memiliki record yang berulang. b. Second Normal Form (2NF), menghilangkan partial dependencies pada primary key. c. Third
Normal
Form
(3NF),
menghilangkan
transitive
dependencies pada primary key. 4. Memeriksa tabel-tabel dengan transaksi user Memastikan bahwa tabel-tabel dalam model data logikal lokal mendukung transaksi yang dibutuhkan oleh user. 5. Mendefinisikan Integrity constraint
23 Integrity constraint adalah constraint yang ditentukan untuk melindungi perubahan struktur basis data yang tidak diinginkan. Setelah menentukan integrity constraint, model data logikal lokal yang tepat akan dihasilkan. Lima tipe dari integrity constraint : a. Required data Atribut harus mengandung nilai yang diperbolehkan dan tidak boleh bernilai NULL. b. Attribute domain constraint Setiap atribut memiliki kumpulan nilai-nilai yang ditentukan sesuai constraint. c. Entity integrity Primary key dari suatu entiti tidak dapat mempunyai nilai NULL. d. Referential integrity Adalah jika foreign key mempunyai sebuah nilai, dan nilai itu harus menunjuk kepada record yang ada di tabel parent. Berikut adalah strategi yang dapat kita pertimbangkan agar referential integrity sesuai dengan fungsinya, yaitu: •
NO ACTION, mencegah penghapusan data dari parent relation jika terdapat referensi data dari child
•
CASCADE, kondisi dimana data yang ada pada parent dihapus, maka secara otomatis akan menghapus data child yang terhubung.
24 •
SET NULL, kondisi dimana data parent dihapus, maka nilai foreign key pada semua referensi pada child akan otomatis diberikan nilai NULL.
•
SET DEFAULT, kondisi dimana data parent dihapus, maka nilai foreign key pada semua referensi pada child akan otomatis diberikan nilai standar.
•
NO CHECK, kondisi dimana data parent dihapus, maka tidak adanya aktivitas yang dilakukan.
e.
Enterprise constraint Melakukan constraint terhadap entiti yang bersangkutan untuk mengatur transaksi yang real world atau dunia nyata, seperti Perusahaan XXX mempunyai peraturan kepada para staffnya agar tidak menangani lebih dari 100 properti pada waktu yang sama.
6. Me-review model data lokal logikal dengan user Tujuan dari langkah ini adalah untuk memastikan apakah model data logikal lokal dan dokumentasi pendukung yang menjelaskan model tersebut merupakan representasi benar sesuai dengan kebutuhan user. 7. Membangun dan memeriksa model data logikal global Tujuan dalam tahap ini adalah menggabungkan keseluruhan model data logikal lokal ke dalam model data logikal global. Langkah-langkah dari tahap penggabungan ini, adalah : a. Menggabungkan model data logikal lokal kedalam model global
25 Hal-hal yang dihasilkan dalam model data logikal lokal seperti ER-Diagram,
relational
schema,
data
dictionary,
dan
dokumentasi yang menjelaskan constraints digunakan untuk menggabungkan model-model data menjadi satu. Di dalam aplikasi basis data yang besar diperlukan langkah-langkah tertentu, antara lain : •
Mereview nama dan isi dari entiti dan candidate key-nya Masalah dalam langkah ini timbul ketika dua atau lebih entiti : o Memiliki nama yang sama tapi mempuyai arti berbeda. o Memiliki nama yang berbeda tetapi mempunyai arti yang sama. Cara pemecahannya yaitu dengan membandigkan isi dari setiap entiti.
•
Me-review nama dan hubungan atau foreign key
•
Menggabungkan setiap entiti dari model data logikal lokal Aktivitas yang dilakukan pada tahap ini adalah: o Menggabungkan entiti atau tabel yang memiliki nama dan primary key yang sama. o Menggabungkan entiti atau tabel yang memiliki nama sama tetapi primary key yang berbeda. o Menggabungkan entiti atau tabel yang memiliki nama berbeda dan menggunakan primary key yang sama atau berbeda.
•
Memasukkan entiti yang unik ke setiap model data lokal
26 •
Menggabungkan tabel atau foreign key dari model data lokal. Langkah-langkah yang dilakukan pada tahap ini adalah: o Menggabungkan tabel atau foreign key yang memiliki nama dan tujuan yang sama. o Menggabungkan tabel atau foreign key yang memiliki nama yang berbeda tetapi dengan tujuan yang sama.
•
Memasukkan relationship atau foreign key yang unik ke setiap model data lokal. Semua relasi / foreign key yang dihasilkan adalah termasuk kedalam model global tanpa adanya perubahan.
•
Memeriksa entiti dan relasi atau foreign key yang kurang.
•
Memeriksa foreign key.
•
Memeriksa integrity constraint.
•
Menggambar Diagram ER-global.
•
Update dokumentasi.
b. Memeriksa model data logikal global Tujuan dari langkah ini adalah untuk memastikan apakah model data logikal global merupakan representasi benar sesuai dengan kebutuhan user c. Memeriksa perkembangan di masa depan Tujuan tahap ini adalah menentukan perubahan penting di masa depan dan memperkirakan apakah model data logikal global dapat mengatasi perubahan tersebut.
27 d. Mereview model data logikal global dengan user Tujuan tahap ini adalah meyakinkan bahwa model data logikal global sesuai dengan kebutuhan perusahaan.
2.1.7.4.3 Fisikal Desain basis data fisikal adalah proses untuk menghasilkan suatu deskripsi dari implementasi basis data. Langkah-langkah dalam perancangan fisikal : 1. Mengubah model data logikal global untuk DBMS Tahap ini mengubah tabel-tabel dalam model data logikal global menjadi suatu bentuk yang dapat diimplementasi ke dalam DBMS yang ingin dipakai. a. Mendesain base Relation Langkah pertama dalam tahap ini adalah mengumpulkan dan menggabungkan tabel-tabel yang dihasilkan dalam proses perancangan basis data logikal. Setiap tabel mempunyai satu keterangan yang terdiri dari : •
Nama tabel
•
Daftar atribut
•
Primary key, alternate key dan foreign key
•
Daftar dari derived atribut dan perhitungan
•
Referential integrity constraint untuk semua foreign key
Dari data-dictionary, setiap atribut terdiri dari :
28 •
Domain yang terdiri dari tipe data, panjang, dan semua constraint
•
Nilai default untuk setiap atribut
•
Nilai NULL atau NOT NULL
b. Merancang representasi dari derived data Atribut yang nilainya dapat ditentukan dengan mengambil nilai dari atribut-atribut lain. Atribut ini juga dikenal sebagai derived attribute atau atribut yang dapat dihitung. c. Merancang constraint Merancang constraint bergantung kepada pemilihan DBMS. Beberapa sistem menyediakan fasilitas yang lebih banyak dibanding yang lainnya untuk menentukan constraint. 2. Merancang representasi fisikal Salah satu dari tujuan utama dari tahap ini adalah untuk menentukan organisasi file yang optimal untuk menyimpan base relation dan index yang dibutuhkan untuk mencapai kinerja yang wajar, menyimpan tabel dan tuple di dalam secondary storage (hard disk) secara efisien. Ada beberapa faktor yang mempengaruhi efisiensi tesebut, yaitu : a. Transaction throughput Jumlah transaksi yang dapat diproses dalam jangka waktu yang ditentukan. b. Response Time
29 Waktu yang diperlukan untuk menyelesaikan satu transaksi. c. Tempat Penyimpanan Jumlah dari ruang penyimpanan yang dibutuhkan untuk menyimpan basis data. Komponen-komponen
perangkat
keras
komputer
dasar
yang
mempengaruhi kinerja sistem: a. Memori utama Kecepatan akses memori utama lebih cepat daripada secondary storage (hard disk). b. CPU CPU mengatur sumber daya sistem dan menjalankan proses atau program user. c. Disk I/O (Input Output) Dengan menggunakan DBMS yang besar, diperlukan sejumlah disk I/O untuk menyimpan dan menampilkan data. d. Network Jika lalu lintas jaringan terlalu sibuk maka masalah diskoneksi jaringan akan terjadi. 3. Menganalisa Transaksi Tujuan tahap ini adalah untuk mengerti transaksi–transaksi yang akan dijalankan di dalam basis data dan menganalisa transaksi-transaksi yang penting. Relation cross-reference matrix, yang memperlihatkan tabel-tabel mana yang diakses oleh setiap transaksi, dipergunakan untuk membantu menentukan transaksi mana yang akan diperiksa.
30 4. Memilih organisasi file Tujuan dari tahap ini adalah untuk menentukan organisasi file yang efisien untuk setiap base relation. Cara menentukan organisasi file yaitu dengan memilih tipe-tipe file yang ada, yaitu: a. Heap sangat tepat digunakan ketika setiap record di dalam tabel harus ditampilkan ketika tabel tersebut diakses. b. Hash cocok digunakan ketika record-record di dalam tabel ditampilkan berdasarkan nilai field yang pasti. c. Indexed sequential access method (ISAM) merupakan struktur penyimpanan yang lebih baik dari hash yaitu nilai field pasti, jangkauan nilai, pattern matching. Update terhadap file ini menyebabkan urutan access key hilang sehingga kecepatan menampilkan data berdasarkan access key menjadi lambat. Update file juga membuat kinerja semakin turun. d. B+-tree, indeks dari file B+-tree bersifat dinamis dan bertambah ketika tabel-tabel bertambah. Dengan demikian, tidak seperti ISAM, kinerja B+-tree tidak menurun ketika tabel di update. B+tree juga menyimpan urutan dari access key e. Clusters, adalah kumpulan dari satu atau lebih tabel yang disimpan bersama-sama karena tabel itu melakukan share kolomkolom yang umum dengan tabel lain dan sering digunakan bersama-sama. Kolom-kolom yang berhubungan antar tabel disebut cluster key. Cluster key hanya disimpan sekali. 5. Pemilihan indeks
31 Tujuan tahap ini adalah menentukan indeks untuk meningkatkan kinerja dari sistem. 6. Estimasi kebutuhan tempat penyimpanan Tujuan dari langkah ini adalah untuk menghitung jumlah dari ruang tempat penyimpanan yang dibutuhkan oleh basis data. Penghitungan ini sangat bergantung pada DBMS target dan penggunaan hardware. Secara umum perhitungan didasarkan pada ukuran dari setiap tuple dan jumlah tuple dalam tabel 7. Merancang User View Merancang user view yang telah dibuat selama analisis dan pengumpulan kebutuhan dari daur hidup aplikasi basis data relasional. 8. Merancang keamanan sesuai kebutuhan Ada 2 sistem keamanan basis data yaitu keamanan sistem (mencegah pada tingkat sistem dengan menggunakan username dan password) dan keamanan data (mencegah akses dari penggunaan objek dari basis data).
2.1.7.5 Prototyping Prototype adalah model aplikasi basis data yang baru tetapi belum memiliki semua fitur yang dibutuhkan oleh user. Tujuan utama dari membangun prototipe aplikasi basis data adalah agar user dapat menggunakan prototipe tersebut untuk mengetahui fitur dari sistem yang bekerja sehingga user dapat merasakan dan memungkinkan untuk memberi saran penambahan fitur baru yang belum ada didalam aplikasi basis data tersebut.
32
2.1.7.6 Implementation Implementation adalah realisasi sebenarnya dari perancangan aplikasi dan basis data. Implementasi basis data diperoleh dengan menggunakan Data Definition Language (DDL) untuk membuat struktur basis data dan file basis data kosong pada DBMS yang digunakan. Sedangkan aplikasi basis data yang baru diimplementasikan dengan menggunakan 3GL atau 4GL. Transaksi basis data pada aplikasi tersebut diimplementasikan dengan menggunakan Data Manipulation Language (DML). Kontrol keamanan dan integrity dalam aplikasi juga diimplementasikan.
2.1.7.7 Konversi dan Pengisian Data Tahap ini dilakukan ketika basis data yang baru menggantikan yang lama. Sekarang ini, sangat umum DBMS memiliki tool yang mampu untuk memindahkan file yang sudah ada ke dalam basis data yang baru. Tool tersebut biasanya membutuhkan spesifikasi dari file sumber dan basis data tujuan kemudian secara otomatis mengkonversi data ke format yang sesuai dengan basis data yang baru.
2.1.7.8 Testing Proses menjalankan aplikasi basis data yang dibuatoleh user dengan tujuan untuk menemukan kesalahan-kesalahan yang disebabkan karena aplikasi tersebut tidak sesuai dengan kebutuhan yang diminta oleh perusahaan atau user.
33 2.1.7.9 Pemeliharaan Sistem Setelah aplikasi basis data diimplementasi dan di-test, aplikasi yang dibuat akan menuju pada tahap maintenance. Hal-hal yang berhubungan dengan tahap maintenance adalah : 1. Me-monitor kinerja dari sistem. Jika kinerja dari sistem masih jauh dari harapan user maka pemeriksaan ulang basis data harus dilakukan. 2. Mengembangkan
dan
meningkatkan
aplikasi
basis
data
(kalau
diperlukan). dengan kebutuhan baru yang berada diluar tahap-tahap sebelumnya dilakukan. Setelah aplikasi basis data sudah beroperasi penuh, pengawasan terhadap kinerja sistem harus terus dilakukan. Pada umumnya DBMS memberikan tool yang bermacam-macam untuk membantu database administrator memasukkan data ke dalam basis data dan memantau sistem tersebut.
2.1.8 Normalisasi 2.1.8.1 Normalisasi Bentuk Pertama / First Normal Form (1NF) Menurut Connoly (2002, p388) normalisasi bentuk pertama adalah setiap tabel dalam basis data hanya mengandung dan memiliki satu nilai saja. Proses normalisasi bentuk pertama dicapai bila setiap relasi yang terdapat dalam basis data tidak mengandung repeating group. Repeating group adalah sekumpulan atribut didalam tabel yang mempunyai banyak nilai didalam tabel tersebut, sedangkan atribut-atribut tersebut akan dijadikan nominasi primary key, atribut yang secara unik mengidentifikasi setiap barisnya didalam tabel UNF. Ada 2 pendekatan untuk menghilangkan repeating group dari tabel UNF:
34 1. Kita membuang repeating group dengan memasukkan data yang sesuai didalam kolom dari baris yang kosong, yang mempunyai data yang berulang-ulang. 2. Dengan menempatkan data yang berulang, bersama dengan atribut primary key-nya, di dalam tabel yang terpisah.
Normalisasi Bentuk Kedua / Second Normal Form (2NF) Bentuk normalisasi kedua adalah suatu relasi bentuk pertama dalam basis data dan setiap atribut yang tidak menjadi primary key bergantung sepenuhnya terhadap primary key relasi tersebut (Connoly, 2002, p392). Normalisasi bentuk kedua didasarkan pada konsep full functional dependencies. Functional dependencies A→B adalah sebuah full functional dependencies jika pembuangan atribut apa saja dari A mengakibatkan ketergantungan yang melemahkan. Functional dependencies A→B adalah tergantung sebagian jika atribut-atribut dibuang dari A, ketergantungannya masih bertahan.
2.1.8.3 Nomalisasi Bentuk Ketiga / Third Normal Form (3NF) Normalisasi bentuk ketiga adalah relasi dari bentuk pertama dan kedua dimana atribut yang bukan primary key bergantung secara transitif terhadap primary key (Connoly, 2002, p394). Normalisasi bentuk ketiga didasarkan pada ketergantungan transitif (transitive dependency), dimana mempunyai kondisi A, B, dan C adalah suatu
35 atribut dalam suatu relasi basis data, jika A→ B, B→C, maka C adalah transitive dependency dari A melalui B.
2.2 Teori Khusus 2.2.1 Penjualan Menurut Mulyadi (2001, p202).)Kegiatan penjualan terdiri dari transaksi penjualan barang atau jasa, baik secara kredit maupun secara tunai. Transaksi penjualan kredit terjadi jika order dari pelanggan telah dipenuhi dengan pengiriman barang atau penyerahan jasa, untuk jangka waktu tertentu perusahaan memiliki piutang kepada pelanggannya. Transaksi penjualan tunai terjadi jika barang atau jasa baru diserahkan oleh perusahaan kepada pembeli jika perusahaan telah menerima kas dari pembeli. Pengertian penjualan adalah suatu aktivitas mengubah kesempatan menjadi pemesanan, termasuk presentasi, saran, negosiasi, dan penutupan transaksi. Dilengkapi dengan kepandaian atau kemampuan pemasaran termasuk cara-cara yang kompetitif,
tren
bisnis
yang
sedang
berkembang,
(http://www.fivetwelvegroup.com/question.html#sales).
dan Tujuan
lain
sebagainya
utama
dari
penjualan adalah untuk memberikan pendapatan dan keuntungan yang mencukupi bagi perusahaan dan untuk meningkatkan kepercayaan pelanggan. Menurut Guiltinan (1994, p307-308) terdapat beberapa macam sistem penjualan, yaitu sebagai berikut : 1. Sistem Tanggapan Langsung (Direct Response Systems) Pada sistem ini, produk didistribusikan langsung kepada pembeli akhir dan pesan penjualan disampaikan kepada pembeli secara perorangan melalui
36 telepon atau surat langsung. Fungsi utama dari sistem ini adalah mendapatkan order. 2. Sistem Penjualan Tatap Muka Langsung (Direct Personal Selling Systems) Sistem ini juga mendistribusikan produk langsung pada pembeli akhir dan pesan penjualan dapat disampaikan kepada pembeli secara perseorangan dengan kontak tatap muka atau telepon. Sedangkan fungsi utamanya adalah untuk menyediakan informasi, petunjuk teknis, pelayanan kepada pelanggan, mengenali perubahan kebutuhan pelanggan. 3. Sistem Penjualan Perdagangan (Trade Selling Systems ) Pada sistem ini, produk didistribusikan melalui pedagang besar atau pengecer yang biasanya membeli untuk dijual kembali kepada pembeli akhir. Pesan penjualan disampaikan dengan melalui tatap muka ataupun telepon untuk pengambilan order. Fungsi utamanya adalah untuk mendapatkan dukungan dari distributor, menyediakan informasi produk, memberikan latihan, dan bantuan penjualan kepada distributor. 4. Sistem Penjualan Missionari (Missionary Selling Systems) Pada sistem ini, produk langsung didistribusikan kepada pembeli akhir, pesan penjualan disampaikan melalui tatap muka dan fungsi utamanya adalah memberikan informasi dan pelayanan kepada pelanggan secara langsung. Menurut Mulyadi (2001, p211) fungsi yang terkait dengan sistem penjualan adalah: 1. Fungsi Penjualan Fungsi ini bertanggung jawab untuk menerima surat order dari pembeli, mengedit order dari pelanggan untuk menambahkan informasi yang belum
37 ada pada surat order tersebut (seperti spesifikasi barang dan rute pengiriman), meminta otorisasi kredit, menentukan tanggal pengiriman dan dari gudang mana barang akan dikirim dan mengisi surat order pengiriman. 2. Fungsi Gudang Fungsi ini bertanggung jawab untuk menyimpan dan menyiapkan barang yang dipesan oleh pelanggan dan mengirimkan barang ke bagian pengiriman. 3. Fungsi Pengiriman Fungsi ini bertanggung jawab untuk menyerahkan barang ke pelanggan berdasarkan surat order pengiriman yang diterima dari fungsi penjualan. 4. Fungsi Penagihan Fungsi ini bertanggung jawab untuk membuat dan mengirimkan faktur penjualan kepada pelanggan, serta menyediakan copy faktur bagi kepentingan pencatatan transaksi penjualan oleh fungsi akuntansi. 5. Fungsi Akuntansi Fungsi ini bertanggung jawab untuk mencatat piutang yang timbul dari transaksi penjualan kredit dan membuat serta mengirimkan pernyataan piutang kepada para debitur, serta membuat laporan penjualan.
2.2.2 Pembelian Berdasarkan
situs
http://www.reference.com/search?q=purchasing,
2007,
pembelian adalah fungsi di dalam bisnis dimana perusahaan mendapatkan input bagi apa yang dihasilkan, yang sama baiknya dengan barang dan layanan yang lainyang perusahaan tersebut perlukan. Dalam bisnis yang lebih besar, fungsi tersebut biasanya ditangani di dalam departemen pembelian, yang dikepalai oleh manajer
38 pembelian. Departemen pembelian bertugas mengeluarkan PO bagi barang, termasuk material dan peralatan. Proses pembelian dimulai ketika agen pembelian menerima daftar permintaan, yang berupa permintaan bagi item atau layanan yang harus dihasilkan. Pembeli kemudian mengevaluasi daftar permintaan untuk menentukan supplier yang menyalurkan barang paling baik. Kemudian membuat proposal permintaan barang kepada supplier. Pembeli juga akan menetukan periode validitas dari permintaan tawaran yang dikenal sebagai Bid due Date yaitu tanggal ketika pendaftaran proposal berakhir. Setelah tawaran diterima oleh supplier, pembeli akan mengevaluasi proposal dari supplier dan mentabulasi tawaran. Biasanya pada sebuah spreadsheet. Tawaran tabulasi merupakan sebuah spreadsheet dengan kategori yang digunakan untuk membandingkan setiap proposal supplier untuk menentukan proposal paling baik yang sesuai dengan kebutuhan pembeli. Setelah tawaran ditabulasikan, pembeli akan membuat keputusan supplier mana yang akan direkomendasikan dan akan membuat order serta penjual akan memualai dalam penyuplaian material sesuai dengan perjanjian.
2.2.3 Retur Transaksi retur penjualan terjadi jika perusahaan menerima pengembalian barang oleh pelanggan (Mulyadi, 1997, p555). Pengembalian barang oleh pelanggan harus diotorisasi oleh fungsi penjualan dan diterima oleh fungsi penerimaan. Sebagai tambahan, pembeli dapat diberikan pengurangan dari harga yang seharusnya dimana
39 barang yang dijual tersebut mengalami kerusakan atau disebabkan oleh alasan lainnya.
2.2.4 Piutang Menurut
situs
http://zulidamel.wordpress.com/2007/12/18/piutang/,
2007,
piutang adalah tuntutan (claims) terhadap pihak tertentu yang penyelesaiannya diharapkan dalam bentuk kas selama kegiatan normal perusahaan. Klaim timbul karena berbagai sebab. misalnya penjualan secara kredit, pemberian pinjaman kepada karyawan, porsekot dalam kontrak pembelian, porsekot kepada karyawan, dan lain-lain. Tidak semua klaim tersebut di sebut sebagai piutang. Berikut ini beberapa bentuk klaim antara lain klaim terhadap kelebihan pembayaran pajak, klaim terhadap perusahaan angkutan atas barang-barang yang rusak atau hilang dalam perjalanan, klaim ganti rugi terhadap perusahaan asuransi, piutang terhadap pemesan saham, piutang penghasilan yaitu penghasilan yang sudah terjadi tetapi belum diterima, bunga yang masih harus diterima, sewa yang masih harus diterima, dan lain-lain. 1. Piutang dagang (account receivables) yaitu piutang yang timbul dari penjualan kredit barang atau jasa yang merupakan usaha pokok perusahaan. Bila piutang timbul dari penjualan aset perusahaan, pemberian pinjaman kepada pihak tertentu maka piutang tersebut tidak termasuk golongan piutang dagang 2. Wesel Tagih yaitu Piutang yang secara formil didukung oleh penjanjian untuk membayar secara tertulis (notes payable)
40 3. Piutang non dagang yaitu piutang yang timbul akibat penjualan aset, pemberian pinjaman kepada pihak tertentu. Misalnya pinjaman karyawan. Penyajian piutang dalam neraca harus tetap menyajikan jumlah bruto piutang karena piutang yang tak dapat direalisasikan hanya berdasarkan taksiran (Prinsip Akuntansi Indonesia 3.1 Pasal 9). Harus dipisahkan secara jelas antara piutang dagang, piutang karyawan dan piutang lainya. Apabila suatu perusahaan mempunyai hubungan jual beli dengan suatu pihak, sehingga terdapat piutang dagang dan juga utang dagang atau utang lainnya, penyajian dalam neraca tidak boleh dikompensasi akan tetapi harus dinyatakan secara terpisah. Dalam sistim akuntansi manual, piutang dicatat oleh bagian khusus yang menangani piutang. Pada sistim akuntansi komputer umumnya pengembang menyerahkan tugas tersebut kepada komputer sehingga bagian piutang cukup melakukan verifikasi untuk menjamin validasi catatan yang dilakukan komputer. Menurut situs http://id.wikipedia.org/wiki/Piutang, 2009, piutang adalah salah satu jenis transaksi akuntansi yang mengurusi penagihan konsumen yang berhutang pada seseorang, suatu perusahaan, atau suatu organisasi untuk barang dan layanan yang telah diberikan pada konsumen tersebut. Pada sebagian besar entitas bisnis, hal ini biasanya dilakukan dengan membuat tagihan dan mengirimkan tagihan tersebut kepada konsumen yang akan dibayar dalam suatu tenggat waktu yang disebut termin kredit atau pembayaran.
41 2.2.5 Hutang Menurut situs http://id.wikipedia.org/wiki/Hutang, 2008, hutang adalah sesuatu yang dipinjam. Seseorang atau badan usaha yang meminjam disebut debitur. Entitas yang memberikan hutang disebut kreditur. Ada dua metode pencatatan hutang, yaitu account payable procedure dan voucher payable procedure. Dalam account payable procedure, catatan hutang adalah berupa kartu hutang yang diselenggarakan untuk setiap kreditur, yang memperlihatkan catatan mengenai nomor faktur dari pemasok, jumlah yang terhutang, jumlah pembayaran dan saldo hutang. Dalam voucher payable procedure, tidak menggunakan kartu hutang, Tapi menggunakan arsip voucher yang disimpan dalam arsip menurut abjad atau menurut tanggal jatuh temponya. Arsip bukti kas keluar ini berfungsi sebagai catatan hutang.
2.2.6 Visual Basic Menurut Indah Indriyanna (2007, p1), kata “Visual” menunjukkan cara yang digunakan untuk membuat GUI (Graphical User Interface). Dengan cara ini, dapat mempermudah proses pemrograman dengan melakukan drag dan drop objek – objek yang akan digunakan. Sedangkan kata “Basic” merupakan bagian dari bahasa BASIC (Beginners All-Purpose Symbolic Instruction Code), yaitu bahasa pemrograman yang dalam sejarahnya sudah banyak digunakan oleh para programmer untuk menyusun aplikasi Menurut
situs
http://hendranasrul.wordpress.com/2008/07/29/interface-antar-
muka-visual-basic-60, 2008, bahasa basic pada dasarnya adalah bahasa yang mudah dimengerti sehingga pemrograman di dalam bahasa Basic dapat dengan mudah
42 dilakukan meskipun oleh orang yang baru belajar membuat program. Hal ini lebih mudah lagi setelah hadirnya Microsoft Visual Basic, yang dibangun dari ide untuk membuat bahasa yang sederhana dan mudah dalam pembuatan script-nya (simple scripting language) untuk graphic user interface yang dikembangkan dalam sistem operasi Microsoft Windows. Visual Basic merupakan bahasa pemrograman yang sangat mudah dipelajari, dengan teknik pemrograman visual yang memungkinkan penggunanya untuk berkreasi lebih baik dalam menghasilkan suatu program aplikasi. Ini terlihat dari dasar pembuatan dalam visual basic adalah form, dimana pengguna dapat mengatur tampilan form kemudian dijalankan dalam script yang sangat mudah. Ledakan pemakaian Visual Basic ditandai dengan kemampuan Visual Basic untuk dapat berinteraksi dengan aplikasi lain di dalam sistem operasi Windows dengan komponen ActiveX Control. Dengan komponen ini memungkinkan penguna untuk memanggil dan menggunakan semua model data yang ada di dalam system operasi windows. Hal ini juga ditunjang dengan teknik pemrograman di dalam Visual Basic yang mengadopsi dua macam jenis pemrograman yaitu Pemrograman Visual dan Object Oriented Programming (OOP). Visual Basic 6.0 sebetulnya perkembangan dari versi sebelumnya dengan beberapa penambahan komponen yang sedang tren saat ini, seperti kemampuan pemrograman internet dengan DHTML (Dynamic HyperText Mark Language), dan beberapa penambahan fitur database dan multimedia yang semakin baik. Sampai saat buku ini ditulis bisa dikatakan bahwa Visual Basic 6.0 masih merupakan pilih pertama di dalam membuat program aplikasi yang ada di pasar perangkat lunak
43 nasional. Hal ini disebabkan oleh kemudahan dalam melakukan proses development dari aplikasi yang dibuat. Pembuatan program aplikasi menggunakan Visual Basic dilakukan dengan membuat tampilan aplikasi pada form, kemudian diberi script program di dalam komponen-komponen yang diperlukan. Form disusun oleh komponen-komponen yang berada di toolbox, dan setiap komponen yang dipakai harus diatur propertinya lewat jendela property. Menu pada dasarnya adalah operasional standar di dalam sistem operasi windows, seperti membuat form baru, membuat project baru, membuka project dan menyimpan project. Di samping itu terdapat fasilitas-fasilitas pemakaian visual basic pada menu. Untuk lebih jelasnya Visual Basic menyediakan bantuan yang sangat lengkap dan detail dalam MSDN. Toolbox berisi komponenkomponen yang bisa digunakan oleh suatu project aktif, artinya isi komponen dalam toolbox sangat tergantung pada jenis project yang dibangun.
2.2.7 SQL (Structured Query Languange) Menurut Privida Kristiono (2008, p1), SQL (Structured Query Languange) dibuat dengan tujuan agar ada metode standar untuk memilih data dari berbagai format database. Bentuknya adalah sebuah bahasa pemrograman yang tidak tergantung dari bahasa permrograman apa yang dipakai, tetapi dapat digunakan di berbagai bahasa pemrograman untuk meng-update dan memilih informasi dari database. Saat ini bahasa ini sudah dikembangkan sedemikian rupa oleh para pembuat database untuk digunakan di database buatan mereka sehingga masingmasing memiliki perbedaan satu dengan yang lain.
44 2.2.8 Crystal Reports Menurut M. Agus J.Alam (2005, p1), crystal reports adalah sebuah program aplikasi untuk membuat laporan-laporan dalam berbagai bentuk dan dari berbagai sumber data. Sumber data yang dapat diolah leh crystal reports dapat berasal dari sumber data local maupun sumber data remote, misalnya dari computer server. Sumber data dapat berasal dari berbagai macam program aplikasi, misalnya dBase, Delphi, Access, Oracle, SQL Server, MySQL dan lain-lain. Crystal reports dapat dioperasikan secara mandiri untuk membuat laporan dari suatu sumber data atau bisa juga dioperasikan dari suatu program aplikasi, misalnya dari program Microsoft Visual Basic atau program Borland Delphi. Oleh karena kecanggihan dan mudahnya pembuatan laporan menggunakan crystal reports ini, banyak program-program lain menggunakan crystal reports sebagai standar pembuatan laporan, dengan cara menempelkan program crystal reports ke dalam program aplikasi tersebut.
2.2.9 Data Flow Diagram Menurut Al-Bahra Bin Ladjamudin (2005, p64), data flow diagram atau yang biasa disebut DFD merupakan model dari sistem untuk menggambarkan pembagian sistem ke modul yang lebih kecil. Salah satu keuntungan menggunakan data flow diagram adalah data memudahkan pemakai yang kurang menguasai bidang komputer untuk mengerti sistem yang akan dikerjakan. 2.2.9.1 Diagram Konteks Menurut Al-Bahra Bin Ladjamudin (2005, p64), Diagram konteks adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu
45 sistem. Diagram konteks merupakan level tertinggi dari DFD yang menggambarkan seluruh input ke sistem atau output dari sistem. Ia akan memberi gambaran tentang keseluruhan sistem. Sistem dibatasi oleh boundary (dapat digambarkan dengan garis putus). Dalam diagram konteks hanya ada satu proses. Tidak boleh ada store dalam diagram konteks. 2.2.9.2 Diagram Level 0 (Overview Diagram) Menurut Al-Bahra Bin Ladjamudin (2005, p64), Diagram level 0 adalah diagram yang menggambarkan proses dari data flow diagram. Diagram level 0 memberikan pandangan secara menyeluruh mengenai sistem yang ditangani, menunjukkan tentang fungsi-fungsi utama atau proses yang ada, aliran data, dam eksternal entiti. Pada level ini sudah dimungkinkan adanya atau digambarkannya data store yang digunakan. Keseimbangan input dan output antara diagram level 0 dan diagram konteks harus terpelihara.
2.2.10 Rich Picture Menurut situs http://minorproject.wordpress.com, 2009, rich picture merupakan sebuah penggambaran secara tidak formal yang menggambarkan pemahaman illustrator dari suatu situasi. Rich picture memfokuskan pada aspek penting dari suatu situasi yang mana ditentukan oleh illustrator.
2.2.11 Diagram Alir / Flowchart Menurut Mulyadi (2001, p60) aliran dokumentasi yang didapat atau dihasilkan dari sistem dalam suatu perusahaan dapat digambarkan dengan simbol-simbol
46 document flowchart atau bagan aliran dokumen. Simbol-simbol standar yang digunakan sebagai berikut :
Simbol
Nama
Keterangan
Process
Simbol ini digunakan untuk menunjukkan adanya proses yang sedang berjalan
Decision
Simbol ini digunakan untuk menunjukkan pengambilan keputusan dalam pemrosesan data dimana biasanya terdapat dua keputusan atau lebih dan ditulis dalam bentuk simbol
Document
Simbol ini digunakan untuk menggambarkan semua jenis dokumen, yang berupa file yang mencatat data suatu transaksi
Multiples Document
Simbol ini digunakan untuk menggambarkan dokumen dan tembusannya
Data
Simbol ini digunakan untuk menggambarkan berbagai jenis dokumen yang digabungkan bersama di dalam satu paket
Predefined Process
Simbol ini digunakan untuk menggambarkan sebuah proses yang telah dirancang dan ditentukan sebelumnya
Terminator
Simbol ini digunakan untuk menunjukkan awal dan akhir dari sebuah proses
47 Manual Operation
Simbol ini digunakan untuk menggambarkan kegitatan manual seperti: menerima order, mengisi formulir dan berbagai jenis kegiatan lainnya
Tabel 2.1 : Tabel Keterangan Diagram Alir
2.2.12 State Diagram Menurut situs http://en.wikipedia.org/wiki/State_diagram, 2008, state diagram adalah diagram yang digunakan untuk merepresentasikan kebiasaan dari sistem, yang terdiri dari jumlah state yang terbatas. Menurut
situs
http://minorproject.wordpress.com/,
2009,
state
diagram
menggambarkan kebiasaan umu sari semua objek dari class tertentu, yang terdiri dari bagian-bagiannya dan transisi diantaranya dan juga dapat menjelaskan use case.