BAB 2 TINJAUAN PUSTAKAlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2014-1-01214-IF Bab2001.pdf ·...
Transcript of BAB 2 TINJAUAN PUSTAKAlibrary.binus.ac.id/eColls/eThesisdoc/Bab2/2014-1-01214-IF Bab2001.pdf ·...
1
BAB 2
TINJAUAN PUSTAKA
2.1. Teori Yang Berkaitan Dengan Basis Data
Pada pembahasan berikut ini akan dibahas teori-teori yang terkait dengan
perancangan basis data yang akan dilakukan.
2.1.1. Introduction toDatabases
Pembahasan ini akan dibahas tentang beberapa komponen dasar yang berkaitan
dengan basis data.
2.1.1.1. Database
Connolly, T. & Begg, C. (2014: 63), database adalah sekumpulan data yang
terhubung secara logikal dan deskripsi dari data tersebut dapat dirancang untuk
menghasilkan informasi yang dibutuhkan oleh organisasi.
2.1.1.2. Information System
Connolly, T. & Begg, C. (2014: 346), information system adalah suatu cara untuk
mengumpulkan, mengatur, mengendalikan, dan menyebarkan informasi ke seluruh
organisasi.
2.1.1.3. Database System
Connolly, T.&Begg, C. (2014: 52), database system adalah kumpulan dari
program aplikasi yang berinteraksi dengan basis data dengan database management system
dan database itu sendiri.
2.1.1.4. DBMS (Database Management System)
Connolly, T. & Begg, C. (2014: 64), database management system adalah sebuah
sistem perangkat lunak yang memungkinkan pengguna untuk mendefinisikan, membuat,
memelihara, dan mengontrol akses terhadap basis data.
2
Pada umumnya, DBMS menyediakan fasilitas-fasilitas berikut:
1. DDL (Data Definition Language)
Memungkinkan pengguna untuk menspesifikasi tipe-tipe data, struktur , dan
constraint data yang akan disimpan dalam basis data.
2. DML(Data Manipulation Language)
Memungkinkan pengguna untuk memasukkan, mengubah, menghapus, dan
mengambil data dari basis data.
3. DBMS juga menyediakan akses kontrol basis data berikut:
a. A Security System
Menghindari pengguna yang tidak memiliki hak untuk mengakses basis
data.
b. An Integrity System
Memelihara konsistensi dari penyimpanan data.
c. A ConcurrencyControl System
Memungkinkan akses berbagi terhadap basis data.
d. A Recovery Control System
Mengembalikan basis data pada keadaan sebelumnya yang konsisten saat
terjadi kegagalan pada perangkat keras atau perangkat lunak.
e. A User-Accessible Catalog
Berisi tentang deskripsi data dalam basis data.
Connolly, T. &Begg, C. (2014: 66), DBMS memiliki lima komponen utama yaitu:
1. Hardware
Perangkat keras atau hardware diperlukan dalam menjalankan suatu aplikasi dan
DBMS, dimana hardware dapat berupa a single personal computer, single
mainframe, dan jaringan komputer berupa server. Hardware yang digunakan
harus sesuai dengan kebutuhan perusahaan dan DBMS yang digunakan.
2. Software
7
3
Komponen- komponen software terdiri dari DBMS software itu sendiri maupun
program aplikasi, sistem operasi, dan juga software jaringan jika DBMS tersebut
menggunakan jaringan seperti LAN.
3. Data
Data merupakan salah satu komponen DBMS yang terpenting khususnya sudut
padang end-users mengenai data yang nantinya akan diolah didalam DBMS. Data
pada sebuah sistem basis data baik single-users sistem maupun multi-users sistem
harus saling berintegrasi secara bersamaan.
4. Procedures
Prosedur merupakan instruksi dan aturan yang mengatur dalam perancangan dan
penggunaan database, penggunaan system, dan para staff yang mengatur
kebutuhan basis data.
Berikut beberapa instruksi prosedur:
a. Bagaimana cara memasuki DBMS?
b. Bagaimana menggunakan fasilitas DBMS dan program aplikasi tertentu?
c. Bagaimana memulai dan mengakhiri DBMS?
d. Bagaimana membuat salinan dari database?
e. Bagaimana mengatasi kesalahan (error) dari hardware dan software?
f. Bagaimana mengubah struktur table, mengorganisasi ulang redudansi data
dan penyimpanan data pada second storage?
5. People
Pada komponen ini pengguna terlibat langsung dengan sistem, seperti
DatabaseAdministrator (DBA), programmer, dan pengguna akhir (End-Users).
Database dan DBMS memerlukan sumber daya manusia agar dapat mengatur
jalannya mekanisme databasedan DBMS.
Ada 4 kategori pengguna dalam sebuah sistem basis data yaitu :
a. Data Administrator (DA) dan Database Administrator (DBA)
Ada duaadministrator dalam database yaitu Data Administrator (DA) dan
Database Administrator (DBA).Data administrator bertanggung jawab
untuk mengatur sumber daya data meliputi perencanaan basis data,
pengembangan dan pemeliharaan standar, kebijakan dan prosedur, dan
4
desain database konseptual/logikal. Database administrator merupakan
orang yang bertanggung jawab untuk mendesain, implementasi,
pemeliharaan, dan perbaikan database.
b. Database Designer
Database designer terdiri dari dua tipe yaitu :
1) Logical Database Designer
Merupakan perancangan yang lebih menekankan dalam
mengindentifikasi data, hubungan antara data, dan batasan-batasan
data sebelum dimasukan ke dalam database.
2) Physical Database Designer
Merupakanperancangan ini memutuskan bagaimana desain
database logikal dapat direalisaikan secara fisik.
c. Application Developers
Application developers merupakan orang yang bertanggung jawab untuk
membuatkan suatu aplikasi database yang harus dilaksanakan oleh end-
users. Aplikasi database tersebut menggunakan bahasa pemrograman
seperti C++ , C#, Java, dan sebagainya.
d. End Users
End-usersmerupakan pengguna akhir dari basis data dan memperoleh
informasi dengan cara mengakses basis data. End-users terdiri dari dua tipe
yaitu :
1) Naive Users
Merupakan user yang biasanya dilewati begitu saja dari DBMS.
Mereka mengakses database melalui program aplikasi yang ditulis
khusus yang berusaha untuk membuat operasi sesederhana
mungkin.
2) Sophisticated Users
Merupakan user di ujung lain dari spektrum, end-users canggih
akrab dengan struktur database dan fasilitas yang ditawarkan oleh
DBMS.
5
Connolly, T. & Begg, C. (2014: 97), DBMS memiliki beberapa fungsi sebagai
berikut :
1. Data Storage, Retrieval, andUpdate
DBMS harus memiliki kemampuan untuk menyimpan, mengambil, dan mengubah
data dalam database. Ini merupakan fungsi fundamental dalam DBMS.
2. A User-Accessible Catalog
DBMS harus mempunyai katalog yang dimana mendekripsikan item data yang
disimpan dan diakses oleh pengguna. Sistem katalog dapat menyimpan data
tentang skema, user, aplikasi, dan sebagainya. Sistem katalog dapat disebut
sebagai kamus data yang berarti kumpulan informasi atau deskripsi data dalam
database yang dikenal dengan namametadata.
Katalog menyimpan data sebagai berikut :
a. Nama, jenis, dan ukuran data.
b. Nama relationship.
c. Batasan integritas ada data.
d. Nama pengguna yang berotoritas yang mempunyai akses pada data.
e. Skema eksternal, konseptual, internal, dan pemetaan antara skema.
f. Pengguna statistik, seperti frekuensi dan perhitungan sejumlah akses yang
dibuat pada objek dalam basis data.
3. Transaction Support
DBMS harus yakin bahwa setiap mekanisme transaksi dapat di update.Transaksi
merupakan sekumpulan aksi yang dilakukan oleh pengguna atau program aplikasi
yang dapat mengakses dan mengubah isi dari database.
4. Concurrency Control Services
DBMS harus dapat memastikan bahwa setiap mekanisme database di update
secara benar ketika terdapat beberapa pengguna melakukan perubahan database.
Salah satu objektif dalam menggunakan DBMS adalah memungkinkan banyak
pengguna untuk mengakses data.Akses konkurensi relatif mudah apabila semua
pengguna hanya membaca database.
5. Recovery Services
6
DBMS harus memiliki pemulihan database apabila terdapat kejadian database
rusak dalam berbagai kondisi. DBMS harus dapat menyediakan mekanisme untuk
mengembalikan database ke keadaan yang konsisten.
6. Authorization Services
DBMS harus memastikan bahwa hanya orang yang berwenang saja yang dapat
mengakses database.
7. Support for Data Communication
DBMS harus dapat mendukung integrasi dan berkomunikasi dengan software
lainnya.
8. Integrity Services
DBMS harus dapat memberikan sarana untuk memastikan kedua data dalam
database dan perubahan pada data berdasarkan aturan tertentu. Ini dapat dijadikan
pertimbangan untuk tipe lainya dari sistem proteksi database.
9. Services to Promote Data Independence
DBMS mempunyai fasilitas untuk mendukung kemandirian program dari struktur
database yang sebenarnya.
10. Utility Services
DBMS harus menyediakan kumpulan layanan utilitas.Program utilitas dapat
membantu untuk membuat database menjadi lebih efisien.
Contoh kegiatan utilitas adalah :
a. Import fasilitas, load database dari file flat, dan eksport fasilitas serta
tidak load database dari file flat.
b. Memantau fasilitas, memantau penggunaan database, dan operasi.
c. Analisis statistik program, mengevaluasi performa dari statistik penggunaan
database, dan operasi.
d. Fasilitas index organisasi, untuk mengatur kembali index, dan overflows.
e. Alokasi dan relokasi, menghapus physical record dari tempat penyimpanan.
Connolly, T. & Begg, C. (2014: 90), DDL (Data Definition Language)
merupakan suatu bahasa yang memperbolehkan seorang DBA untuk mendeskripsikan dan
7
memberi nama suatu entitas, atribut, dan relasi data yang diperlukan oleh aplikasi, bersama
dengan integritas dan batasan keamanan datanya.
Perintah-perintah DDL yang digunakan diantaranya :
1. Create Table, digunakan untuk membuat tabel dengan mengidentifikasikan tipe
data untuk setiap kolom.
2. Alter Table, digunakan untuk menambah atau membuang kolom dari konstrain.
3. Drop Table, digunakan untuk membuang atau menghapus tabel berserta semua
data yang terkait didalamnya.
4. Create Index, digunakan untuk membuat index pada suatu tabel.
5. Drop Index, digunakan untuk membuang atau menghapus index yang telah dibuat
sebelumnya.
Connolly, T. & Begg, C. (2014: 90), DML (Data Manipulation Language)
merupakan bahasa yang menyediakan satu set operasi untuk mendukung pengoperasian
manipulasi data dasar pada basis data.
Pengoperasian data yang akan dimanipulasi pada umumnya meliputi :
1. Penambahan data baru ke dalam basis data.
2. Modifikasi data yang disimpan dalam basis data.
3. Pengembalian data yang terdapat dalam basis data.
4. Penghapusan data dari basis data.
Perintah-perintah yang ada pada DML diantaranya:
1. Select, digunakan untuk menampilkan sebagian atau seluruh isi dari suatu tabel
dan menampilkan kombinasi isi dari beberapa tabel.
2. Update, digunakan untuk mengubah isi satu atau beberapa atribut dari suatu
tabel.
3. Insert, digunakan untuk menambah satu atau beberapa baris nilai baru ke dalam
suatu tabel.
4. Delete, digunakan untuk menghapus sebagian atau seluruh isi dari suatu tabel.
Connolly, T. & Begg, C. (2014: 75), keuntungan DBMS yaitu :
1. Mengatur Redudansi Data
8
Salah satu keuntungan menggunaan basis data adalah mengurangi redudansi data
atau tingkat duplikasi data. Dengan menggunakan DBMS, tingkat redudansi data
dapat diminimalisir sehingga dapat menghemat memori pada media penyimpanan
fisikal.
2. Konsistensi Data
Dengan mengurangi tingkat redudansi maka bepengaruh pada tingkat konsistensi
data.Semakin sedikit tingkat redudansi data maka semakin akurat juga tingkat
konsistensi dari data yang terdapat dalam basis data.
3. Penggunaan Data Bersama
Basis data yang terintegrasi memungkinkan organisasi untuk mengakses data
secara bersamaan sehingga mempercepat dalam penyampaian informasi karena
mengakses sumber data yang sama. Biasanya data hanya dimiliki oleh bagian atau
departemen tertentu saja dalam suatu organisasi, tetapi dengan DBMS hanya
dengan memiliki hak akses saja seseorang dapat mengetahui data yang diperlukan
tanpa harus meminta datanya kepada bagian atau departemen tertentu.
4. Integritas Data
Dengan adanya constraint atau batasan dari data yang ada dalam basis data, maka
tingkat integritas dari data yang berada di dalam basis data lebih terjamin
integritasnya.
5. Meningkatkan Keamanan
Dalam DBMS, terdapat fasilitas yang mengatur akses misalnya otorisasi untuk
mengakses, menambah, mengubah, dan menghapus. Dengan demikian setiap
pengguna DBMS tidak dapat melakkukan sesuatu yang bukan menjadi haknya.
6. Meningkatkan Standarisasi
Agar memudahkan pengguna dalam mengoperasikan DBMS, maka perlu dibuat
sebuah standar dan dokumentasi yang jelas. Standarisasi yang dibuat sepert
bentuk format data untuk pertukaran data, ketentuan penamaan, standar
dokumentasi, prosedur pembaharuan, dan pengaturan akses.
7. Skala Ekonomi
9
Menggabungkan semua data operasional ke dalam sebuah basis data dan membuat
beberapa aplikasi yang mengakses satu sumber data dapat mengurangi jumlah
pengeluaran organisasi yang akhirnya dapat meningkatkan skala ekonomi.
8. Keseimbangan Konflik Kebutuhan
Pengguna atau suatu bagian dalam organisasi mungkin memiliki kebutuhan yang
tidak sama dengan kebutuhan pengguna lainnya. Dengan adanya DBMS
memungkinkan dibuatnya keputusan mengenai desain dan penggunaan
operasional basis data secara keseluruhan.
9. Meningkatkan Akses Data dan Tanggapan
Untuk mendapatkan informasi tertentu dari basis data tidak perlu staf ahli untuk
membuat perangkat lunak yang bertujuan membaca informasi yang
dinginkan.Pengguna dapat mengakses langsung ke basis data hanya dengan
menuliskan perintah menggunakan bahasa SQL (Structured Query Language).
10. Meningkatkan Produktifitas
DBMS menyediakan banyak fungsi-fungsi standar yang memungkinkan seorang
programmer dapat menuliskan fungsi tersebut dalam suatu instruksi pada
program aplikasi. Pada tingkatan utama, DBMS menyediakan rutinitas untuk
mengendalikan fungsi-fungsi yang membuat seorang pembuat program untuk
berkonsentrasi pada fungsi yang lebih spesifik yang dibutuhkan oleh pengguna
tanpa harus mengkhawatirkan implementasi pada tingkatan yang lebih
rendah.Banyak DBMS yang memberikan lingkungan generasi ke empat yang
berisi alat-alat untuk menyederhanakan pengembangan dari aplikasi basis data.
Hal ini meningkatkan produktifitas programmer dan mengurangi waktu
pengembangan serta penghematan biaya.
11. Meningkatkan Pemeliharaan
DBMS memisahkan deskripsi data dari aplikasi sehingga perubahan yang terjadi
pada deskripsi data tidak akan mengubah aplikasi yang telah dibuat. Hal ini
dikenal dengan istilah independensi data.
12. Meningkatkan Concurrency Data
Penggunaan DBMS memungkinkan banyak pengguna untuk mengakses basis data
secara bersamaan. DBMS mengatur akses data yang dilakukan secara bersamaan
10
dari banyak pengguna yang berbeda agar data yang ditampilkan tetap konsisten
dan memiliki integritas ke setiap pengguna yang sedang melakukan akses ke basis
data.
13. Meningkatkan Fungsi Backup dan Recovery Data
DBMS meyediakan fasilitas untuk mengurangi kegagalan sistem atau aplikasi
program, yaitu fasilitas backup dan restore. Fasilitas ini sangat bermanfaat untuk
menjaga isi dari basis data jikalau terjadi kesalahan sistem, kerusakan perangkat
keras, dan kerusakan perangkat lunak yang menyebabkan DBMS berhenti
beroperasi.
Connolly, T. & Begg, C. (2014: 78), kerugian DBMS yaitu :
1. Kompleksitas
Ketentuan fungsionalitas yang kita harapkan dari sebuah DBMS yang baik
membuat DBMS seolah-olah seperti sepotong bagian yang ekstrim dan rumit dari
sebuah perangkat lunak.
2. Ukuran
Kompleksitas dan luasnya fungsionalitas membuat DBMS menjadi software
yang sangatbesar dan membutuhkan ruang disk serta memori substansial untuk
menjalankannya secara efesien.
3. Biaya Tambahan untuk Hardware
Untuk mencapai performa yang dibutuhkan, sangat diperlukan membeli mesin
besar, mesin yang didedikasikan untuk menjalankan DBMS.
4. Dampak yang Besar dari Sebuah Kesalahan
Sentralisasi sumber daya menambah kerentanan sistem.Setelah semua pengguna
dan aplikasi bergantung pada ketersediaan dari DBMS, kesalahan komponen
tertentu dapat menyebabkan operasi berhenti.
11
2.1.1.5. Application Program
Connolly, T. & Begg, C. (2014: 65), application program adalah sebuah program
komputer yang berinteraksi dengan basis data dengan menghasilkan permintaan yang
sesuai (biasanya perintah SQL) kepada DBMS.
2.1.2. Relational Model
Pembahasan ini akan dibahas tentang terminologi dan konsep struktural dasar
dalam model relasional.
2.1.2.1. Relational Data Structure
Connolly, T. & Begg, C. (2014: 152), relational data structure terdiri atas:
1. Relation
Sebuah tabel dengan baris-baris dan kolom-kolom.
2. Attribute
Nama kolom dari sebuah relation.
3. Domain
Sekumpulan nilai-nilai yang diperbolehkan untuk satu atau lebih attributes.
4. Tuple
Baris dari sebuah relation.
5. Degree
Jumlah attributes yang berada dalam sebuah relation.
6. Cardinality
Jumlah tuples yang berada dalam sebuah relation.
7. Relational Database
Sekumpulan hubungan normalisasi dengan nama relasi yang berbeda.
2.1.2.2. Relational Keys
Connolly, T. & Begg, C. (2014: 158), relational keys terdiri atas:
1. Super Key
12
Sebuah atau sekumpulan attributes yang secara unik mengidentifikasikan sebuah
tuples dalam sebuah relation.
2. Candidate Key
Sebuah superkey yang bukan merupakan bagian dari superkey dalam relation.
3. Primary Key
Candidatekey yang dipilih untuk mengidentifikasikan tuples secara unik dalam
relation.
4. Foreign Key
Sebuah atau kumpulan attributes dalam sebuah relation yang cocok dengan
candidatekey dari beberapa relation.
2.1.2.3. Integrity Constraint
Connolly, T. & Begg, C. (2014: 161), integrity constraint terdiri atas:
1. Null
Menyatakan sebuah nilai untuk sebuah attributes yang tidak diketahui atau tidak
digunakan dalam tuples.
2. EntityIntegrity
Attributesprimarykey tidak boleh null dalam relasi dasar.
3. ReferentialIntegrity
Jika terdapat foreignkeydalam suatu relasi, maka nilai foreignkeyakan
dibandingkan dengan nilai candidatekey dari beberapa tuples relasi itu sendiri atau
nilai foreignkey harus null seluruhnya.
4. GeneralConstraint
Aturan tambahanyang ditentukan olehpenggunabasis data yang
mendefinisikanataumembatasibeberapa aspekdari perusahaan.
2.1.3. DSDLC(Database System Development Lifecylce)
Connolly, T. & Begg, C. (2014: 347), database system development lifecycle secara
inheren terkait dengan siklus hidup sistem informasi. Harus mengenali bahwa tahapan
database system development lifecycle tidak selalu berurutan, tetapi melibatkan beberapa
13
jumlah pengulangan tahap sebelumnya melalui loop-feedback.Contohnya masalah yang
dihadapi pada database design mungkin memerlukan analisis dan persyaratan tambahan.
Gambar 2.1Database System Development Lifecycle
2.1.3.1. Database Planning
Connolly, T. & Begg, C. (2014: 347), database planning adalah kegiatan-kegiatan
manajemen yang memungkinkan tahapan-tahapan dalam siklus hidup pengembangan basis
14
data dapat direalisasikan seefektif dan seefisien mungkin. Perencanaan basis data harus
dapat di integrasikan dengan keseluruhan strategi sistem informasi dari organisasi.
Terdapat tiga isu utama yang dilibatkan dalam merumuskan sebuah strategi sistem
informasi yaitu:
1. Identifikasi dari rencana dan tujuan perusahaan dengan menentukan kelanjutan
kebutuhan sistem informasi yang diperlukan.
2. Mengevaluasi sistem informasi yang ada saat ini untuk menentukan kekuatan-
kekuatan dan kelemahan-kelemahan yang ada saat ini.
3. Penilaian terhadap peluang teknologi informasi yang dapat menghasilkan
keuntungan yang kompetitif.
Berikut terdapat dua langkah penting dalam perencanaan basis data:
1. Mission Statement
Mendefinisikan tujuan utama dari sistem basis data, membantu menjelaskan tujuan
dari basis data, dan menyediakan arah yang lebih jelas terhadap sistem basis data
yang efektif dan efisien.
2. Mission Objective
Mengidentifikasikan tugas-tugas khusus yang harus mendukung sistem basis data.
2.1.3.2. System Definition
Connolly, T. & Begg, C. (2014: 350), system definition menjelaskan ruang lingkup
dan batasan dari aplikasi basis data dan pandangan dari pengguna utama. Sebelum
merancang sistem basis data, penting untuk mengidentifikasi batasan dari sistem yang akan
dibangun dan bagaimana tampilannya dapat berinteraksi dengan bagian lain dari sistem
informasi organisasi. Penentuan batasan dari sistem tidak hanya dari pengguna dan aplikasi
saat ini, tetapi juga pengguna dan aplikasi untuk masa mendatang.
2.1.3.3. Requirement Collection and Analysis
Connolly, T. & Begg, C. (2014: 350), requirement collection and analysis
merupakan proses mengumpulkan dan menganalisis informasi tentang bagian dari
15
organisasi yang harus didukung oleh sistem database, dan menggunakan informasi ini
untuk mengidentifikasi persyaratan untuk sistem baru.
Ada tiga pendekatan utama untuk mengelola persyaratan sistem database dengan
pandangan beberapa pengguna yaitu :
1. The Centralized Approach
Connolly, T. & Begg, C. (2014: 352), the centralized approach kebutuhan untuk
tiap pandangan pengguna disatukan menjadi satu set kebutuhan untuk aplikasi
basis data. Umumnya pendekatan ini dipakai jika basis datanya tidak terlalu
kompleks.
2. The View Integration Approach
Connolly, T. & Begg, C. (2014: 352), the view integration approach kebutuhan
untuk tiap pandangan pengguna digunakan untuk membangun sebuah model data
terpisah yang merepresentasikan tiap pandangan. Hasil dari data-data model
tersebut kemudian disatukan dibagian perancangan basis data.
3. A Combination of Both Approaches
Connolly, T. & Begg, C. (2014: 352), a combination of both approaches adalah
kombinasi keduanya.
Connolly, T. & Begg, C. (2014: 378), dalam mengumpulkan data terdapat banyak
teknik untuk mengumpulkan informasi. Teknik - teknik ini yang disebut fact-finding
techniques. Teknik fact-finding diantaranya :
1. Examining Documentation
Examining documentation berguna untuk memperoleh wawasan mengenai
kebutuhan organisasi terhadap basis data, mengidentifikasi bagian dari organisasi
yang terkait dengan masalah, dan memahami sistem yang sedang berjalan.
2. Interviewing
Interview adalah teknik fact-finding yang paling populer dan umum digunakan.
Teknik ini memungkinkan pengumpulan informasi secara tatap muka.
3. Observing the Enterprise in Operation
Observing the enterprise in operation adalah teknik yang mudah digunakan untuk
mengumpulkan data terhadap pertanyaan dan sesuai dengan kebutuhan sistem
16
berdasarkan keterangan pengguna.
4. Research
Research adalah teknik yang digunakan untuk mengkaji masalah. Riset dapat
menggunakan informasi terkini seperti internet, buku, dan buku referensi.
5. Questionnaires
Questionnaires adalah teknik pengumpulan data dan informasi yang bisa
didapatkan secara cepat dari banyak responden yang dikelola dengan beberapa
kontrol melalui pemberian pertanyaan.Ada dua tipe pertanyaan yaitu format
bebas dan format terikat.
2.1.3.4. Database Design
Connolly, T. & Begg, C. (2014: 354), database design merupakan proses
pembuatan suatu desain untuk sebuah basis data yang akan mendukung operasional dan
tujuan suatu perusahaan.
Ada dua pendekatan untuk mendesain sebuah basis data yaitu :
1. Bottom-Up Approaches
Bottom-up approaches dimulai pada tingkat awal dari atribut (properti dari entitas
dan relationship), melalui analisis dari asosiasi antar atribut, dikelompokkan
menjadi hubungan yang merepresentasikan jenis-jenis entitas dan hubungan antar
entitas. Pendekatan ini cocok untuk mendesain basis data yang sederhana dengan
jumlah atribut yang tidak banyak.
2. Top-Down Approaches
Top-down approaches digunakan pada basis data yang lebih kompleks. Dimulai
dengan pengembangan dari model data yang mengandung beberapa entitas dan
hubungan tingkat tinggi, kemudian menggunakan perbaikan top-down berturut-
turut untuk mengidentifikasikan entitas, hubungan dan atribut berkaitan tingkat
rendah. Pendekatan ini biasanya digambarkan melalui ER(Entity Relationship).
Connolly, T. & Begg, C. (2014: 504), design methodologyadalah sebuah
pendekatan terstruktur yang menggunakan bantuan prosedur, teknik, alat, dan dokumentasi
17
untuk mendukung dan memfasilitasi proses perancangan. Terdapat tiga fase dalam
perancangan basis data yaitu:
1. Conceptual Database Design
Connolly, T. & Begg, C. (2014: 505), conceptual database design adalahproses
membangun sebuah model data konseptual dari kebutuhan data
perusahaan.Terdapat beberapa langkah dalam membangun model konseptualyaitu:
a. Mengidentifikasi Tipe-TipeEntity
Tujuannyauntuk mengidentifikasi tipe entitas yang diperlukan.
b. Mengidentifikasi Tipe-TipeRelationship
Tujuannyauntuk mengidentifikasi hubungan-hubungan penting yang ada
antaratipe-tipe entitas.
c. Mengidentifikasi dan Mengasosiasikan Atribut-Atribut dengan Tipe-
TipeEntityatau Relationship
Tujuannya untukmenghubungkan atribut-atribut dengan tipe entitas atau
relationship.
d. Menentukan Domain Atribut
Tujuannya untukmenentukandomainbagiatribut-atributdalam model
datakonseptual.
e. Menentukan Atribut-Atribut Candidate Key, Primary Key, dan Alternate
Key
Tujuannyauntuk mengidentifikasikan candidate key untuk setiap tipe entitas
dan jika terdapat lebih dari satu candidate key, memilih salah satu sebagai
primary key dan sisanya sebagai alternate key.
f. Mempertimbangkan Penggunaan Enhanced Modeling Concept (Optional)
Tujuannya untuk mempertimbangkan penggunaan konsep enhanced
modeling, seperti specialization/generalization, aggregation, dan
composition.
g. Memeriksa Model untuk Redudansi
Tujuannya untuk memeriksa redundasi yang muncul dalam model.
h. Memvalidasi Model Konseptual Terhadap Transaksi-TransaksiPengguna.
18
Tujuannya untukmemastikanmodelkonseptualmendukungtransaksi
yangdibutuhkan.
i. Meninjau Kembali Model Data Konseptual denganPengguna
Tujuannya untukmeninjau kembali model data konseptual dengan pengguna
untuk memastikan bahwa model tersebut merupakan representasi dari
keperluan data perusahaan.
2. Logical Database Design
Connolly, T. & Begg, C. (2014: 505), logical database design adalah proses
menerjemahkan model data konseptual ke dalam model data logikal dan
memvalidasi model ini untuk mengecek bahwa bentuk strukturalnya sudah benar,
serta mampu mendukung transaksi yang diperlukan. Terdapat beberapa langkah
dalam membangun dan memvalidasi model konseptualyaitu:
a. Menurunkan Relasi untuk Model Data Logikal
Tujuannya untuk menciptakan hubungan untuk model data logikal yang
mewakili entitas, relasi, dan atribut yang telah diidentifikasi.
b. Memvalidasi Relasi dengan Menggunakan Normalisasi
Tujuannya untuk memvalidasi hubungan dalam model data logikal
menggunakan normalisasi.
Connolly, T. & Begg, C. (2014: 452), normalizationadalah sebuah
teknikuntuk menghasilkan sekumpulan relasi dengan properti yang diinginkan
yang memberikan data yang diperlukan bagi perusahaan. Tujuan dari normalisasi
yaitu untuk memastikan bahwa kumpulan dari relasi-relasi memliki jumlah atribut
yang cukup untuk mendukung keperluan data perusahaan.Selain itu, relasi-relasi
harus memiliki data redundasi yang minimal agar dapat menghindari masalah
update anomalies.Update anomalies yaitu kondisi ketika relasi mengandung data
yang berulang.
19
Connolly, T. & Begg, C. (2014: 452), the purpose of normalization adalah
untuk mengidentifikasi satu set hubungan yang cocok untuk mendukung data
perusahaan.
Tujuan lainnya yaitu :
1. Mengidentifikasi hubungan antar atribut.
2. Mengkombinasikan atribut untuk membentuk relasi.
3. Mengkombinasikan relasi untuk membentuk database.
4. Menghindari anomali.
Connolly, T. & Begg, C. (2014: 464), the process of normalization secara
umum terbagi atas empat proses yaitu:
1. Unnormalized Form (UNF)
Dalam proses normalisasi UNF kita menampilkan semua field atau
atribut yang ada dalam suatu form yang ingin kita normalisasi.
2. First Normal Form (1NF)
Sebuah relasi berada dalam 1NF jika relasi tersebut tidak berisi
atribut yang berulang (repeating group), field hasil perhitungan
dihilangkan dan sudah mempunyai primary key.
3. Second Normal Form (2NF)
Sebuah relasi berada dalam 2NF jika relasi tersebut dalam 1NF dan
untuk setiap atribut non key bergantung fungsional penuh kepada
primary key. Jadi pada 2NF kita akan menghilangkan
ketergantungan sebagian / partial : ketergantungan field-field tertentu
hanya kepada salah satu key yang composit.
4. Third Normal Form (3NF)
Sebuah relasi berada dalam 3NF bila relasi tersebut dalam 1NF dan
2NF dan tidak ada atribut non key yang tergantung fungsional
kepada atribut non key yang lainnya ( transitive dependency ).
c. Me
mvalidasi Relasi dengan User Transaction
20
Tujuannya dari langkah ini yaitu memastikan bahwa relasi-relasi yang
berada dalam model data logikal sudah mendukung transaksi yang
diperlukan.
d. Memeriksa Integrity Constraints
Tujuannya untuk memeriksa integrity constraints yang direpresentasikan
dalam model data logikal.
e. Memeriksa Kembali Model Data Logikal dengan Pengguna
Tujuannyauntuk memeriksa ulang model data logikal dengan pengguna
untuk memastikan bahwa mereka sudah mempertimbangkan model dengan
benar dari data yang diperlukan dalam perusahaan.
f. Menggabungkan Model Data Logikal ke Dalam Model Global (Optional)
Tujuannya untuk menggabungkan model data logikal lokal ke dalam model
data logikal global tunggal untuk merepresentasikan semua pandangan
pengguna terhadap basis data.
g. Mempertimbangkan Perkembangan Di masa Depan
Tujuannya dari langkah ini yaitu menentukan segala perubahan signifikan
yang mungkin terjadi pada masa depan dan menaksirkan kemungkinan
untuk menangani perubah tersebut.
3. Physical Database Design
Connolly, T. & Begg, C. (2014: 505),physical database designadalah proses yang
menghasilkan deskripsi implementasi basis data pada penyimpanan sekunder,
mendeskripsikan hubungan dasar, files organization, indeks yang digunakan
untuk mencapai akses yang efisien terhadap data, integrityconstraints, dan juga
pengukuran keamanan. Terdapat beberapa tahapan dalam peracangan basis data
fisikalyaitu:
a. Menerjemahkan Model Data Logikal untuk DBMS yang Digunakan
Tujuannya untuk menghasilkan sebuah skema basis data relasional dari
model data logis yang dapat diimplementasikan dalam DBMS yang dipilih.
b. Merancang File Organizations dan Indexes
tujuannya untuk menentukan file organizations yang optimal untuk
21
menyimpan relasi-relasi dasar dan index yang diperlukan.
c. Merancang User Views
Tujuannya untuk merancang pandangan pengguna yang telah
diidentifikasikan selama tahap requirements collection and analysisdari
databasesystem development lifecyle.
d. Merancang Mekanisme Keamanan
Tujuannya untuk merancang mekanisme keamaman untuk basis data yang
ditentukan oleh pengguna selama tahap requirements and collection dari
database system development lifecyle.
e. Mempertimbangkan Pengenalan Redundansi Terkontrol
Tujuannyauntuk menentukan apakah memperkenalkan redundasi dengan
cara terkontrol dan mengendurkan aturan normalisasi akan meningkatkan
kinerja sistem.
f. Mengawasi dan Mengendalikan Sistem Operasional
Tujuannya untuk mengawasi sistem operasional dan meningkatkan
performa dari sistem untuk membenarkan keputusan desain yang tidak tepat
atau perubahan kebutuhan.
2.1.3.5. DBMS Selection
Connolly, T. & Begg, C. (2014: 359), DBMS selection yang sesuai untuk
mendukung aplikasi basis data mencakup :
1. Mendefinisikan Syarat-Syarat Referensi Studi.
Menentukan tujuan, batasan masalah dan tugas yang harus dilakukan.
2. Mendaftar Dua atau Tiga Jenis Produk
Membuat daftar barang-barang, misalnya darimana barang didapat, berapa
biayanya, serta bagaimana bila ingin mendapatkannya.
3. Mengevaluasikan Produk.
Barang-barang yang ada dalam barang diteliti lebih lanjut untuk mengetahui
kelebihan dan kekurangan barang tersebut.
4. Merekomendasikan Pilihan dan Membuat Laporan.
22
Langkah terakhir dari DBMS, yaitu mendokumentasikan proses dan untuk
menyediakan pernyataan mengenai kesimpulan dan rekomendasi terhadap salah
satu produk DBMS.
2.1.3.6. Application Design
Connolly, T. & Begg, C. (2014: 363), application design merupakan desain user
interface dan program aplikasi yang digunakan untuk memproses database. Application
design dibagi menjadi dua aspek yaitu :
1. Transaction Design
Connolly, T. & Begg, C. (2014: 364), transaction design adalah suatu tindakan,
atau serangkaian tindakan yang dilakukan oleh single-users atau program aplikasi,
yang mengakses atau merubah isi database.
Ada tiga tipe transaksi yaitu :
a. Retrieval Transactions
Retrieval transactions digunakan dalam mengambil data untuk ditampilkan
pada layar atau dalam menghasilkan suatu laporan.
b. Update Transactions
Update transactions digunakan untuk memasukan catatan baru, menghapus
catatan lama, atau memodifikasi catatan yang ada dalam database.
c. Mixed Transactions
Mixed transactions saling bergantungan terhadap retrieval dan updating
data. (misalnya, operasi untuk mencari dan menampilkan rincian properti).
2. User Interface
Connolly, T. & Begg, C. (2014: 365), sebelum mengimplementasikan laporan,
terdapat beberapa susunan dalam mendesain user interface :
a. Meaningful Title
Informasi yang disampaikan oleh judul harus jelas dan mengidentifikasikan
dengan jelas tujuan dari form / report.
b. Comprehensible Instructions
Instruksi harus singkat dan ketika informasi tambahan dibutuhkan, maka
harus ada help screen.Instruksi harus ditulis dengan baik sesuai dengan
23
standar format yang ada.
c. Logical Grouping and Sequencing of Fields,
Fields yang dihubungkan ditempatkan pada form / report. Urutan fields
harus logikal dan konsisten.
d. Visually Appealing Layout of The Form or Report
Tampilan yang akan dipresentasikan harus menarik bagi pengguna.
Tampilan harus sesuai dengan hardcopy agar konsisten.
e. Familiar Fields Labels
Penggunaan label yang familiar.
f. Consistent Terminology and Abbreviations
Terminologi dan singkatan yang digunakan harus konsisten.
g. Consistent Use of Colour
Penggunaan warna pada kata - kata yang penting dalam form /
report.Penggunaan warna juga harus konsisten.
h. Visible Space and Boundaries for Data Entry Fields
Pengguna harus mengetahui jumlah total tempat yang disediakan. Ini
memungkinkan pengguna untuk mempertimbangkan format yang sesuai
untuk data sebelum memasukkan ke dalam field.
i. Convenient Cursor Movement
Pengguna harus dengan mudah dapat menjalankan operasi yang diinginkan
dengan menggerakkan kursor pada form / report.
j. Error Correction for Individual Character and Entire Fields
Pengguna harus dengan mudah dapat menjalankan operasi yang diinginkan
untuk membuat perubahan terhadap nilai field.
k. Error Messages for Unacceptable Values
Jika pengguna salah memasukkan data, pesan kesalahan akan muncul pada
layar. Pesan yang muncul harus menginformasikan pengguna letak
kesalahan.
l. Optional Fields Marked Clearly
Pembuatan optional harus jelas teridentifikasi untuk pengguna.
m. Explanatory Messages for Fields
24
Ketika pengguna menggerakkan kursor pada field, maka informasi tentang
fieldt ersebut harus muncul pada layar.
n. Completion Signal
Menjelaskan bahwa pengguna telah menyelesaikan suatu proses.
2.1.3.7. Prototyping
Connolly, T. & Begg, C. (2014: 367), prototyping adalah membangun sebuah
model kerja dari aplikasi basis data yang mengizinkan user untuk memvisualisasikan dan
mengevaluasi gambaran sistem secara menyeluruh.
Tujuan utama prototyping adalah memungkinkan pengguna menggunakan
prototype untuk mengidentifikasi fitur sistem, apakah sudah bekerja dengan baik atau
belum. Terdapat dua strategi dalam merancang prototype yaitu:
1. Requirements Prototyping
Requirements prototyping menggunakan sebuah prototype untuk menentukan
kebutuhan sistem basis data yang diusulkan dan ketika sudah terpenuhi,
prototype tidak digunakan lagi.
2. Evolutionary Prototyping
Evolutionary prototyping menggunakan sebuah prototype untuk tujuan yang
sama. Namun, jika kebutuhan sudah terpenuhi, prototype tersebut tidak dibuang
tetapi untuk selanjutnya akan dikembangkan menjadi aplikasi basis data yang
akan berjalan.
2.1.3.8. Implementation
Connolly, T. & Begg, C. (2014: 367), implementation adalah realisasi fisik basis
data dan rancangan aplikasi. Dalam tahap penyelesaian desain, kita dapat menerapkan
basis data dan program aplikasi yang telah kita buat. Implementasi basis data
menggunakan Data Definition Language (DDL) yang kita pilih dalam melakukan
pemilihan DBMS atau dengan menggunakan Graphical User Interface (GUI), yang
menyediakan fungsional yang sama dengan pernyataan DDL yang low level. Pandangan
pengguna lainnya juga diimplementasikan.Data Manipulation Language (DML)
25
digunakan untuk mengimplementasikan transaksi basis data di dalam bagian aplikasi
program dari tujuan DBMS..
2.1.3.9. Data Conversion and Loading
Connolly, T. & Begg, C. (2014: 368), data conversion and loading adalah
memindahkan data dari sistem yang lama ke sistem yang baru dan mengkonversi aplikasi
yang ada untuk dijalankan di basis data yang baru. Tahapan tersebut terjadi ketika sistem
basis data yang lama digantikan dengan sistem basis data yang baru. Pada saat ini, suatu
DBMS biasanya memiliki kegunaan untuk memasukkan file kedalam basis data yang
baru dengan tujuan agar memungkinkan pengembang dapat mengkonversi dan
menggunakan program aplikasi dari sistem yang lama untuk digunakan oleh sistem yang
baru.
2.1.3.10. Testing
Connolly, T. & Begg, C. (2014: 368), testing adalah proses menjalankan sistem
basis data dengan maksud menemukan masalah. Pengujian juga harus mencakup kegunaan
dari sistem basis data.Idealnya, sebuah evaluasi harus dilakukan terhadap spesifikasi
kegunaannya. Contoh kriteria yang dapat digunakan untuk melakukan evaluasi meliputi :
1. Learnability
Berapa lama waktu yang dibutuhkan pengguna baru untuk menjadi produktif
dengan sistem.
2. Performance
Seberapa baik respon sistem sesuai praktek kerja pengguna.
3. Robustness
Seberapa toleransinya sistem dari kesalahan pengguna.
4. Recoverability
Seberapa baik sistem pulih dari kesalahan pengguna.
5. Adaptability
Seberapa dekat sistem terkait dengan satu model perkerjaan.
26
2.1.3.11. Operational Maintenance
Connolly, T. & Begg, C. (2014: 369), operational maintenance adalah proses
pemantauan dan pemeliharaan sistem basis data setelah instalasi. Setelah melewati tahap
pelaksanaan dan pengujian. Tahap berikutnya adalah pemeliharaan dengan kegiatan –
kegiatan berikut:
1. Pemantauan kinerja sistem. Jika kinerja sistem tidak dapat diterima, penyusunan
ulang basis data mungkin diperlukan.
2. Pemeliharaan dan peningkatan sistem basis data (bila diperlukan). Memasukkan
persyaratan baru ke dalam sistem basis data melalui tahap sebelumnya dari siklus
hidup.
2.1.4. Entitiy Relational Modeling
Pembahasan ini akan dibahas tentang teknik untuk menganalisa informasi yang
dikumpulkan mengenai keperluan pengguna terhadap basis data.
2.1.4.1. Pengertian
Connolly, T. & Begg, C. (2014: 405), entity relationship modeling adalah
pendekatan top-down untuk merancang basis data yang di awali dengan mengidentifikasi
data penting yang disebut entitas dan relasi antar data yang harus diwakili dalam model
tersebut.
2.1.4.2. Entity Types
Connolly, T. & Begg, C. (2014: 406),entity types adalah sekumpulan objek dengan
properti yang sama yang diidentifikasi oleh perusahaan dengan keberadaan yang
independen dan entity occurrence adalah sebuah objek yang diidentifikasikan secara unik
dari sebuah entity types.
2.1.4.3. Relationship Types
Connolly, T. & Begg, C. (2014: 408), relationship typesadalah sekumpulan
asosiasi yang memiliki arti antar tipe entitas dan relationship occurrence adalah sebuah
27
asosiasi yang diidentifikasikan secara unik yang mengandung sebuah kejadian dari setiap
tipe entitas yang terlibat.
Connolly, T. & Begg, C. (2014: 410), degree of a relationship type yaitu jumlah
partisipasi tipe entitas dalam sebuah relasi. Terdapat beberapa jenis degree of a relationship
type:
1. Binary, hubungan antar dua entitas.
2. Ternary, hubungan antar tiga entitas.
3. Quartenary, hubungan antar empat entitas.
4. Recursive atau unary, sebuah tipe relasi dengan satu tipe entitas yang berpartisipasi
lebih dari satu kali dengan peran yang berbeda.
Connolly, T. & Begg, C. (2014: 412), recursive relationship yaitu jenis hubungan di
mana jenis entitas yang sama berpartisipasi lebih dari sekali dalam peran yang berbeda.
2.1.4.4. Attributes
Connolly, T. & Begg, C. (2014 : 413),attributeadalahproperti darisuatu tipe entitas
atau relasi dan attribute domain adalah sekumpulan nilai yang diperbolehkan dalam satu
atau lebih atribut. Terdapat beberapa jenis atribut yaitu:
1. Simple Attributeand Composite Attribute
Connolly, T. & Begg, C. (2014: 413), simple attribute adalah sebuah atribut yang
terdiri dari komponen tungal dengan keberadaan independen. Composite attribute
adalah sbeuah atribut yang terdiri dari beberapa komponen, masing-masing dengan
keberadaan independen.
2. Single-Valued Attribute and Multi-Valued Attribute
Connolly, T. & Begg, C. (2014: 414), single-valued attribute adalahsebuah atribut
yang memegang nilai tunggal untuk setiap kemunculan suatu entitas . Multi –
valued attribute adalah sebuah atribut yang memegang beberapa nilai untuk setiap
kemunculan suatu entitas.
28
3. Derived Attribute
Connolly, T. & Begg, C. (2014: 414), derived attribute adalah sebuah atribut
mewakili nilai yang diturunkan dari nilai atribut terkait atau sekumpulan atribut,
belum tentu dalam tipe entitas yang sama.
4. Keys
Connolly, T. & Begg, C. (2014: 415), keys dibagi menjadi tiga jenis :
a. Candidate Keys
Set atribut minimal yang secara unik mengidentifikasi setiap kemunculan
dari tipe entitas.
b. Primary Keys
Candidate key yang dipilih untuk mengidenfikasi secara unik, tiap kejadian
pada sebuah tipe entitas.
c. Composite Keys
Sebuah candidate key yang terdiri dari dua atau lebih atribut.
2.1.4.5. Strong and Weak Entity
Connolly, T. & Begg, C. (2014: 417), dapat dibedakan jenis entitas sebagai tipe
yang kuat atau yang lemah.
1. Strong Entity Type
Strong entity typeadalah sebuah tipe entitas yang tidak bergantung pada
keberadaan-keberadaan jenis entitas lainnya.
2. Weak Entity Type
Weakentity typeadalah sebuah tipe entitas yang bergantung pada keberadaan
beberapa jenis entitas lain.
29
2.1.4.6. Structural Constraints
Connolly, T. & Begg, C. (2014: 419), multiplicityadalahjumlah kejadian yang
mungkin terjadi pada entitas yang berhubungan dengan sebuah kejadian tunggal dari tipe
entitas lain dalam suatu relasi tertentu.
1. One to One (1:1) Relationships
One to one (1:1) relationships adalah kondisi ketika sebuah relasi menggambarkan
hubungan antara sebuah entity occurance pada sebuah entitas dengan entity
occurance pada entitas yang lainnya dalm relasi tersebut.
2. One to Many (1:*) Relationships
One to many (1:*) relationships adalah kondisi ketika sebuah relasi
menggambarkan hubungan antara sebuah entity occurrence pada sebuah entitas
dengan satu atau lebih entity occurance pada entitas yang lainnya dalm relasi
tersebut.
3. Many to Many (*:*) Relationships
Many to many (*:*) r elationships adalah kondisi ketika sebuah relasi
menggambarkan hubungan antara satu atau lebih entity occurance pada sebuah
entitas dengan satu atau lebih entity occurance pada entitas yang lainnya dalm
relasi tersebut.
4. Multiplicity for Complex Relationships
Multiplicity for complex relationships adalah jumlah (range) dari kejadian yang
mungkin dari suatu entitas dalam suatu hubungan n ketika yang lain ( n-1 )
nilainya tetap.
5. Cardinality and Participation Constraints
a. Cardinality Constraints
Cardinality constraints menjelaskan jumlah maksimum hubungan kejadian
yang mungkin untuk suatu entitas yang berpartisipasi dalam jenis hubungan
tertentu.
b. Participation Constraints
Participation constraints menentukan semua atau hanya beberapa kejadian
entitas yang berpartisipasi dalam suatu hubungan.
30
2.2. Teori Yang Berkaitan Dengan Aplikasi
Pada pembahasan berikut ini akan dibahas teori-teori yang terkait dengan
perancangan aplikasi yang akan dilakukan.
2.2.1. Flowchart
Romney, Marshall B. & Steinbart, Paul J. (2006: 70),flowchart adalah teknik
analitis yang digunakan untuk mendeskripsikan beberapa aspek sistem informasi secara
jelas, singkat dan logis.Flowchart menggunakan kumpulan simbol yang umum untuk
menggambarkan prosedur proses transaksi yang digunakan suatu perusahaan serta aliran
data pada sistem tersebut.
Simbol Keterangan
Document
Merepresentasikan dokumen atau laporan yang dapat
berupa tertulis tangan atau hasil print komputer.
On-page Connector
Mengubungkan aliran proses dalam satu halaman.
Off-page Connector
Menghubungkan aliran proses dengan halaman lain.
Manual Operation
Merepresentasikan proses operasi yang dilakukan secara
manual.
31
Decision
Merepresentasikan tahapan pembuatan keputusan dengan
adanya alternatif aliran proses data.
Document or Processing Flow
Merepresentasikan arah aliran pemrosesan atau
dokumen.
Terminal
Merepresentasikan awal, akhir, atau interupsi.
Tabel 2.1 Notasi pada Flowchart
2.2.2. State Transition Diagram
Bentley, Lonnie D.& Whitten, Jeffrey L.(2007: 635),state transition diagram
adalah alat yang digunakan untuk menggambarkan urutan dan variasi dari tampilan-
tampilan yang muncul ketika sesi pengguna.
Terdapat dua jenis komponen yang digunakan dalam menggambarkan
statetransitiondiagram, yaitu persegi panjang dan panah. Persegi panjang digunakan untuk
mewakili tampilan layar, sedangkan panah digunakan untuk mewakili aliran kontrol
layar.
Simbol Keterangan
32
State
Persegi panjang digunakan untuk mewakili tampilan
layar.
Transition
Panah digunakan untuk mewakili aliran kontrol layar
Tabel 2.2Notasi pada State Transition Diagram
2.2.3. Eight Golden Rules
Shneiderman, B. & Plaisant, C. (2010: 32), terdapat delapan aturan yang menjadi
prinsip dasar dalam mendesain tampilan, yaitu:
a. Strive for Consistency
Aturan ini merupakan aturan yang paling sering dilanggar karena terdapat banyak
bentuk konsisten yang perlu diperhatikan.Konsistensi yang dimaksud yaitu konsistensi
terhadap urutan tindakan, perintah, menu, tata letak, font, dan warna yang konsisten.
b. Cater to Universal Usability
Mengenali kebutuhan pengguna yang beragam dengan memperhatikan kalangan
yang akan menggunakan website kita dari rentang usia, pemula, dan lain-lain. Hal ini dapat
dilakukan dengan menambahkan fitur, seperti penjelasan dan shortcut yang sekaligus dapat
memaksimalkan kecepatan interaksi dan memperkaya desain interface website.
c. Offer Informative Feedback
Untuk setiap tindakan pengguna, seharusnya terdapat umpan balik dari
sistem.Untuk tindakan yang kecil dan sering digunakan, umpan balik bisa sederhana, tetapi
untuk tindakan yang besar dan jarang digunakan, umpan balik harus lebih besar.Umpan
balik bisa berupa informasi jika terdapat informasi baru dan terjadi kesalahan perintah.
33
d. Design Dialogs to Yield Closure
Urutan tindakan harus diatur dalam kelompok yang dimulai dari awal, tengah, dan
akhir.Umpan balik yang informative pada penyelesaian sekelompok tindakan memberikan
kepuasan, rasa lega, dan sinyal untuk mempersiapkan ke kelompok tindakan berikutnya.
e. Prevent Errors
Sistem yang kita rancang seharusnya merupakan sistem yang tidak memungkinkan
pengguna untuk melakukan kesalahan yang serius.Jika pengguna melakukan kesalahan,
seharusnya ada mekanisme yang menanganinya, seperti pemberian instruksi yang
sederhana untuk pengembalian.
f. Permit Easy Reversal of Actions
Tindakan dalam sistem seharusnya reversible (bisa kembali ke sebelumnya). Fungsi
ini akan mengurangi rasa kecemasan karena pengguna mengetahui bahwa kesalahan bisa
dibatalkan sehingga bisa mendorong user untuk mencoba menu-menu yang asing.
g. Support Internal Locus of Control
Pengguna yang menjadi pengontrol sistem dan bukan sistem yang mengontrol
pengguna.
h. Reduce Short Term Memory Load
Merancang sistem yang memungkinkan pengguna untuk tidak perlu mengingat
banyak perintah.Hal tersebut bisa dilakukan dengan tampilan yang sederhana, tampilan
yang digabungkan dari beberapa halaman, urutan tindakan, dan penyediaan informasi yang
diperlukan.
2.2.4. PHP
Saputra, A. (2011: 1), PHP atau yang memiliki kepanjangan PHP (Personal Home
Page Tools): Hypertext Preprocessor merupakan suatu bahasa pemrograman yang
difungsikan untukmembangun suatu website dinamis. PHP menyatu dengan kode HTML,
maksudnyaadalah beda kondisi. HTML digunakan sebagai pembangun atau pondasi dari
kerangkalayout web, sedangkan PHP difungsikan sebagai prosesnya sehingga dengan
adanyaPHP tersebut, web akan sangat mudah di-maintenance.PHP berjalan pada sisi server
sehingga PHP disebut juga sebagai bahasa Server SideScripting. Artinya bahwa dalam
setiap/untuk menjalankan PHP, wajib adanya webserver.PHP ini bersifat open source
34
sehingga dapat dipakai secara cuma-cuma dan mampulintas platform, yaitu dapat berjalan
pada sistem operasi Windows maupun Linux. PHPjuga dibangun sebagai modul pada web
server apache dan sebagai binary yang dapatberjalan sebagai CGI.
Ada beberapa alasan yang menjadi dasar pertimbangan mengapa menggunakanPHP
antara lain:
1. Mudah dipelajari, alasan tersebut menjadi salah satu alasan utama
untukmenggunakan PHP, pemula pun akan mampu untuk menjadi web master
PHP.
2. Mampu Lintas Platform, artinya PHP dapat / mudah diaplikasikan ke
berbagaiplatform OS(Operating Sytem) dan hampir semua browser juga
mendukungPHP.
3. Free alias Gratis, bersifat Open Source.
4. PHP memiliki tingkat akses yang cepat.
5. Didukung oleh beberapa macam web server, PHP mendukung beberapa webserver,
seperti Apache, IIS, Lighttpd, Xitami.
6. Mendukung database, PHP mendukung beberapa database, baik yang gratismaupun
yang berbayar, seperti MySQL, PostgreSQL, mSQL, Informix, SQLserver, dan
Oracle.
2.2.5. MySQL
Kustiyahningsih, Y. &Anamisa, Devie R. (2010: 145), MySQL merupakan suatu
database. MySQL dapat juga dikatakan sebagai databaseyang sangat cocok bila dipadukan
dengan PHP.Secara umum, database berfungsisebagai tempat atau wadah untuk
menyimpan, mengklasifikasikan data secaraprefosional. MySQL bekerja menggunakan
SQL Language (Structure Query Language).Itu dapat diartikan bahwa MySQL merupakan
standar penggunaan database di duniauntuk pengolahan data.MySQL termasuk jenis
RDBMS (Relational Database Management System).Sedangkan RDBMS sendiri akan
lebih banyak mengenal istilah seperti tabel, baris, dankolom digunakan dalam perintah-
perintah di MySQL. MySQL merupakan sebuah basisdata yang mengandung satu atau
sejumlah tabel.Tabel terdiri atas sejumlah baris dansetiap baris mengandung satu atau
beberapa kolom.Di dalam PHP telah menyediakanfungsi untuk koneksi ke basis data
35
dengan sejumlah fungsi untuk pengaturan baikmenghubungkan maupun memutuskan
koneksi dengan server database MySQL sebagaisarana untuk mengumpulkan informasi.
Pada umumnya, perintah yang paling sering digunakan dalam mySQL adalah
select(mengambil), insert (menambah), update (mengubah), dan delete (menghapus).
Selainitu, SQL juga menyediakan perintah untuk membuat database, field, ataupun index
gunamenambah atau menghapus data.Alasan yang mengacu menggunakan MySQL adalah
MySQL merupakan databaseyang mampu berjalan di semua sistem operasi.Selain itu,
sangat mudah sekali untukdipelajari dan sepertinya hosting server juga banyak sekali
mengadopsi MySQLsebagai standar database.Dan tentunya juga bersifat gratis atau free.
Saat ini MySQL juga tidak hanya gratis, semenjak MySQL dibeli oleh SUN, MySQL tidak
lagi menikmati fitur-fitur barunya, karena telah dibatasi penggunanya. Fitu-fitur tersebut
hanya bisa didapat jika membeli lisensinya.
Berikut beberapakelebihan yang dimiliki oleh MySQL:
a. Bersifat open source, yang memiliki kemampuan untuk dapat dikembangkanlagi.
b. Menggunakan bahasa SQL(Structure Query Language), yang merupakanstandar
bahasa dunia dalam pengolahan data.
c. Super perfomance dan reliable, tidak bisa diragukan, proses databasenya
sangatcepat dan stabil.
d. Sangat mudah dipelajari.
e. Memiliki dukungan support (group) pengguna MySQL.
f. Mampu lintas platform, dapat berjalan di berbagai sistem operasi.
g. Multiuser, dimana MySQL dapat digunakan oleh beberapa user dalam waktuyang
bersamaan tanpa mengalami konflik.
2.2.6 Data Flow Diagram
O’Brien, J. A. and G. M. Marakas.(2010:145), DFD adalah perangkat grafis yang
menggambarkan urutan dari proses-proses dan fungsi-fungsi yang terdapat di dalam
batasan-batasan pada sistem yang telah dispesifikasikan dan aliran data yang terdapat di
dalam sistem. Dalam hierarki DFD terdapat 3 level, yaitu:
36
a. Diagram Level Konteks
Diagram level konteks ditujukan untuk mengidentifikasikan batasan pada sistem, yang
menyangkut dengan relasi terhadap semua sumber atau entitas yang berinteraksi dengan
sistem tersebut. Konteks diagram hanya mengandung satu proses, dan dinamakan oleh
nama sistem tersebut.
b. Diagram Level-0 DFD
Diagram level-0 DFD adalah proses tunggal yang terdapat dalam diagram level konteks
dan direpresentasikan ulang secara lebih detail.
c. Diagram Level-1 sampai Level-n DFD
Setelah diagram level-0 selesai dan dinyatakan keakuratannya sebagai representasi dari
sistem, proses penguraian berlanjut pada tahap level-1 sampai level-n. Jelasnya, level-0
diuraikan menjadi level-1, dan jika diperlukan, level-1 diuraikan menjadi level-2, dan
seterusnya hingga detail level yang diperlukan dari seluruh proses dan sub proses telah
direalisasikan.
Simbol Keterangan
Process
Data Flow
External Agent
Data Store
37
Tabel 2.3Notasi pada Data Flow Diagram
2.3. Teori Yang Berkaitan Dengan Tema Penelitian
Pada pembahasan berikut ini akan dibahas teori-teori yang terkait dengan tema
penelitian untuk perancangan aplikasi basis data yang akan dilakukan.
2.3.1. Penjualan
Mulyadi (2008: 455), penjualan tunai dilakukan oleh perusahaan dengan
mewajibkan pembeli melakukan pembayaran harga produk terlebih dahulu sebelum
produk diserahkan oleh perusahaan kepada pembeli.Setelah uang diterima oleh
perusahaan, maka produk kemudian diserahkan kepada pembeli dan transaksi
penjualan tunai kemudian dicatat oleh perusahaan.
Tahapan Siklus Penjualan (Revenue Cycle)
Mulyadi (2008: 469), jaringan prosedur yang membentuk sistem penjualan
tunai adalah:
a. Prosedur Order Penjualan.
Pada prosedur ini fungsi penjualan menerima order dari pembeli dan membuat
faktur penjualan tunai untuk memungkinkan pembeli melakukan pembayaran
harga produk ke fungsi kas dan untuk memungkinkan fungsi Gudang dan fungsi
pengiriman menyiapkan produk yang akan diserahkan kepada pembeli.
b. Prosedur Penerimaan Kas.
Pada prosedur ini fungsi kas menerima pembayaran harga barang dari pembeli
dan memberikan tanda pembayaran (berupa pita register kas dan cap “lunas”
pada faktur penjualan tunai) kepada pembeli untuk memungkinkan pembeli
tersebut melakukan pengambilan produk yang dibelinya dari fungsi pengiriman.
c. Prosedur Penyerahan Barang.
Pada prosedur ini fungsi pengiriman menyerahkan produk kepada pembeli.
d. Prosedur Pecatatan Harga Pokok Penjualan.
38
Pada prosedur ini, fungsi akuntansi membuat rekapitulasi harga pokok penjualan
berdasarkan data yang dicatat dalam kartu persediaan.
Fungsi yang terkait
Mulyadi (2008: 462), fungsi yang terkait dalam penjualan tunai adalah:
a. Fungsi Penjualan
Fungsi ini bertanggung jawab untuk menerima order dari pembeli, mengisi
faktur penjualan tunai dan menyerahka aktur tersebut kepada pembeli untuk
kepentingan pembayaran harga produk ke fungsi kas.
b. Fungsi Kas
Fungsi ini bertanggung jawab sebagai penerima kas dari pembeli. Dalam
struktur organisasi
c. Fungsi Gudang
Fungsi ini bertanggung jawab untuk menyiapkan produk yang dipesan oleh
pembeli, serta menyerahkan produk tersebut ke fugsi pengiriman
d. Fungsi Pengiriman
Fungsi ini bertanggung jawab untuk membungkus produk dan menyerahkan
produk yang telah dibayar harganya kepada pembeli.
e. Fungsi Akuntansi
Fungsi ini bertanggung jawab sebagai pencatat transaksi penjualan dan
penerimaan kas dan pembuat laporan penjualan.
Dokumen yang terkait
Mulyadi (2008: 463), dokumen yang digunakan dalam penjualan tunai
adalah sebagai berikut:
a. Faktur Penjualan Tunai
Dokumen ini digunakan untuk merekam berbagai informasi yang diperlukan
oleh manajemen mengenai transaksi penjualan tunai.
b. Pita Register Kas
39
Dokumen ini dihasilkan oleh fungsi kas dengan cara mengoperasikan mesin
register kas. Pita ini merupakan bukti penerimaan kas yang dikeluarkan oleh
fungsi kas dan merupakan dokumen pendukung faktur penjualan tunai yang
dicatat dalam jurnal penjualan.
Retur Penjualan
Mulyadi (2008: 226), transaksi retur penjualan terjadi ketika jika perusahaan
menerima pengembalian produk dari pelanggan.Pengembalian produk oleh
pelanggan harus diotorisasi oleh fungsi penjualan dan diterima oleh fungsi
penerimaan.
2.3.2. Produksi
Mulyadi (2008: 419), fungsi produksi adalah suatu gabungan dari komponen-komponen
yang saling berhubungan dan saling mendukung untuk melaksanakan pengolahan bahan baku atau
bahan mentah menjadi barang jadi, dalam suatu perusahaan. Sistem perusahaan manufaktur
melakukan konversi bahan mentah menjadi barang jadi sesuai dengan desain produk didasarkan
pada keinginan konsumen sehingga terjadi pertambahan nilai yang lebih tinggi.
Mulyadi (2008: 419), fungsi yang terkait di dalam prosedur order produksi,
yaitu:
a. Fungsi Penjualan Perusahaan berproduksi berdasarkan pesanan adalah fungsi
penjualan bertanggung jawab atas penerimaan order dari langganan dan
meneruskan order tersebut ke fungsi produksi.
b. Perusahaan berproduksi berdasarkan massa adalah fungsi penjualan melayani
order dari langganan berdasarkan persediaan produk jadi yang ada di gudang.
c. Fungsi Perencanaan dan Pengawasan Produksi Berfungsi membantu fungsi
produksi dalam merencanakan dan mengawasi kegiatan produksi.
d. Fungsi Produksi Bertanggung jawab atas pembuatan perintah produksi bagi
fungsi-fungsi yang ada di bawahnya bertanggung jawab atas pelaksanaan proses
40
produksi sesuai dengan surat order produksi,daftar kebutuhan bahan baku, dan
daftar kegiatan produksi.
2.3.3. Persediaan
Mulyadi (2008: 560), sistem dan prosedur yang bersangkutan dengan sistem
akuntansi persediaan menurut adalah:
Tipe Persediaan yaitu persediaan produk jadi, prosedur yang bersangkutan;
a. Prosedur pencatatan produk jadi
Mencatat tambahan kuantitas produk jadi dalam kartu gudang.
b. Prosedur permintaan dan pengeluaran barang gudang
Dalam prosedur ini dokumen sumber yang digunakan adalah bukti permintaan
dan pengeluaran barang.Bukti ini dipakai oleh bagian gudang untuk mencatat
pengurangan persediaan karena pemakaian intern.
c. Sistem perhitungan fisik persediaan
Sistem perhitungan fisik persediaan umumnya digunakan oleh perusahaan
untuk menghitung secara fisik persediaan yang disimpan di gudang yang
hasilnya digunakan untuk meminta pertanggungjawaban Bagian Gudang
mengenai pelaksanaan fungsi penyimpanan, dan pertanggungjawabannya, serta
untuk melakukan penyesuaian terhadap catatan persediaan dibagian kartu
persediaan.
2.3.4. Pembelian
Mulyadi (2008: 298), pembelian adalah kegiatan pemilihan sumber,
pemesanan dan perolehan barang dan jasa sebagai salah satu aktivitas utama operasi
bisnis perusahaan.
Fungsi yang terkait dalam sistem akuntansi pembelian adalah:
1. Fungsi Gudang
41
Dalam sistem akuntansi pembelian, fungsi gudang bertanggung jawab untuk
mengajukan permintaan pembelian sesuai dengan posisi persediaan yang ada
digudang dan untuk menyimpan barang dagang yang telah diterima oleh fungsi
penerimaan.
2. Fungsi Pembelian
Fungsi pembelian bertanggung jawab untuk memperoleh informasi mengenai
harga barang, menentukan pemasok yang dipilih dalam pengadaan barang, dan
mengeluarkan order pembelian kepada pemasok yang dipilih.
3. Fungsi Penerimaan
Fungsi penerimaan bertanggung jawab untuk melakukan pemeriksaan terhadap
jenis, mutu dan kualitas barang yang diterima dari pemasok guna menentukan
dapat atau tidaknya barang tersebut diterima oleh perusahaan.
4. Fungsi Akuntansi
Fungsi akuntansi yang berkaitan dalam transaksi pembelian adalah fungsi
pencatatan utang dan fungsi pencatatan persediaan. Fungsi pencatatan utang
bertanggung jawab untuk mencatat transakasi pembelian ke dalam register
bukti kas keluar dan untuk menyelenggarakan arsip dokumen sumber (bukti
kas keluar) yang berfungsi sebagai catatan utang atau menyelenggarakan kartu
utang sebagai buku pembantu utang.
2.4. Hasil Penelitian Sebelumnya
Untuk mendukung kelancaran proses perancangan basis data dan menambah
wawasan mengenai informasi-informasi yang lainnya, terdapat hasil penelitian berupa
jurnal yang sudah dibaca, dan dipelajari secara saksama. Berikut merupakan hasil
ringkasan dari hasilpenelitian sebelumnya yang didapatkan:
Nama Penulis : Octafian, Tri D.
Tahun Penerbit : 2011
42
Judul : Desain Database Sistem Informasi Penjualan Barang
(Studi Kasus : Minimarket “Grace” Palembang)
Kota Terbit : Palembang
Nama Penerbit : STMIK PalComTech
Dalam jurnal ini mengatakan bahwa dalam pengolahan data secara
terkomputerisasi merupakan sarana yang sangat dibutuhkan dalam era globalisasi seperti
sekarang ini.Dengan menggunakan teknologi tersebut dapat membantu penyajian data
yang sangat cepat, efektif dan akurat.Juga dapat membantu dalam pengambilan
keputusan. Seperti sebuah minimarket yang merupakan suatu usaha yang berorientasi
laba, maka dari itu sudah sebaiknya pengolahan dan penyajian datanya sudah
tersistematis dan terkomputerisasi karena dapat membantu proses penyetokan barang,
control kadaluarsa dsb.
Dengan keuntungan-keuntungan yang disebabkan oleh pengolahan data secara
terkomputerisasi tersebut, mampu mempermudah si pemilik minimarket dalam
menentukan tindakan apa yang harus dilakukan ke depannya nanti,dalam membuat
kebijakan-kebijakan untuk memperlancar dan meningkatkan penjualan barang di
minimarket-nya.
Langkah-langkah yang diterapkan dalam membuat Desain database sistem
informasi penjualan barang tersebut adalah :
1. Membuat desain database sistem menggunakan ERD
2. Membuat pemetaan (mapping) ERD.
3. Menjelaskan dan menentukan atribut, primary key, dan foreign key.
4. Membuat hubungan antar tabel.
Kesimpulan yang dapat diambil antara lain:
1. Dari proses bisnis, bisa diterjemahkan ke dalam pembentukan diagram ERD.
43
2. Organisasi/perusahaan yang bergerak dalam bidang usaha yang sama, belum tentu
memiliki diagram ERD yang sama. Tergantung proses bisnis yang berjalan di
dalam organisasi tersebut.