BAB 2 LANDASAN TEORI 2.1
Teori Umum 2.1.1 Basis data Menurut Connoly & Begg (2010: 65), basis data adalah sebuah kumpulan data yang berhubungan secara logis dan mendeskripsikan data tersebut, dibangun untuk memenuhi kebutuhan informasi dalam suatu organisasi. Menurut Williams & Sawyer (2011: 164), basis data adalah sekumpulan file yang saling terinterelasi dalam sebuah sistem komputer. Menurut Brown, et al. (2012: 52), basis data adalah kumpulan data logikal yang saling berhubungan yang disusun untuk memenuhi kebutuhan perusahaan. Dalam jurnal Subekti, et al. (2011), basis data adalah suatu kumpulan data yang berhubungan secara logis yang dirancang dengan maksud untuk memenuhi permintaan informasi dari suatu organisasi. Dari beberapa definisi menurut para ahli dapat disimpulkan bahwa basis data adalah kumpulan dari data yang terhubung dalam sebuah sistem komputer. Basis data tersebut digunakan untuk memenuhi kebutuhan organisasi
2.1.2 Database Management System (DBMS) Menurut Connoly & Begg (2010: 66), database management system adalah sebuah perangkat lunak yang memungkinkan pengguna untuk menentukan, membuat, memelihara, dan mengontrol akses dalam sebuah basis data. Menurut O'Brien (2010: 222), database management 10
11 system adalah software utama dalam pendekatan manajemen basis data. Software
tersebut mengendalikan pembuatan,
pemeliharaan,
dan
penggunaan basis data organisasi dan pemakai akhir. Dalam Jurnal NewsRx
(2013),
DBMS
adalah
sekumpulan
program
yang
memungkinkan untuk memasukkan, mengubah, dan memilih data dalam database. Terdapat beberapa tipe DBMS, berkisar untuk sistem sederhana yang dijalankan pada personal computer, sampai pada sistem besar yang dijalankan pada sistem mainframe. Dalam jurnal NewsRx (2012-A), DBMS adalah satu set program yang mengendalikan pembuatan, perawatan, dan penggunaan database, memungkinkan pengguna dan aplikasi lain menyimpan serta mendapatkan data secara terstruktur. Dalam jurnal NewsRx (2012-B), DBMS adalah program yang memungkinkan banyak pengguna untuk menyimpan data dalam database atau untuk mengakses database untuk mendapatkan informasi yang disimpan dalam database dengan menyediakan lingkungan dimana penyimpanan data yang baik dan manajemen data yang efisien dapat dicapai. Dari beberapa definisi menurut para ahli dapat disimpulkan bahwa DBMS adalah suatu perangkat lunak yang dapat dijalankan pada personal computer hingga sistem besar seperti mainframe. DBMS memungkinkan pengguna untuk memasukkan, mengubah, dan memilih data dalam database.
12 2.1.2.1
Komponen Lingkungan DBMS Menurut Connoly & Begg (2010: 68), komponen DBMS terdiri dari lima komponen, yaitu : •
Hardware (Perangkat Keras) Perangkas
keras
dibutuhkan
untuk
menjalankan
aplikasi. Perangkat keras tersebut dapat berupa komputer tunggal, mainframe tunggal, dan jaringan komputer. •
Software (Perangkat Lunak) Komponen perangkat lunak terdiri dari perangkat lunak DBMS itu sendiri dan aplikasi program seperti operating
system,
jaringan.
Bahasa-bahasa
pemograman seperti ‘C’, C++, Java, Visual Basic, COBOL. •
Data Data merupakan komponen yang terpenting dalam DBMS
khususnya
bagi
pengguna
akhir.
Data
menghubungkan machine components dengan human component. •
Prosedur Prosedur merupakan intruksi-intruksi yang
berperan
dalam menentukan perancangan dan penggunaan data terhadap sebuah basis data.
13
•
Manusia Komponen akhir dari DBMS adalah manusia atau pengguna yang terlibat dengan sebuah sistem.
Gambar 2.1 Komponen Lingkungan DBMS (Connoly & Begg, 2010: 68)
2.1.2.2
Multi-user DBMS Architecture Menurut Connoly & Begg (2010: 108), arsitektur digunakan untuk mengimplementasikan multi-user basis data management system. Berikut beberapa tipe dari Multi-User DBMS Architecture, yaitu : 1.
Teleprocessing Architectures Teleprocessing
merupakan
arsitektur
tradisional
dimana hanya terdapat satu komputer sebagai pusat. Semua proses bekerja didalam batasan satu komputer.
Gambar 2.2 Teleprocessing Topology
14 (Connoly & Begg, 2010: 108) 2.
File-Server Architecture Menurut Connoly & Begg (2010: 109), File-Server Architecture
merupakan
sebuah
komputer
yang
dihubungkan dengan suatu jaringan utama yang memungkinkan untuk berbagi file seperti dokumen, spreadsheet, gambar, dan basis data.
Gambar 2.3 File-Server Architecture (Connoly & Begg, 2010: 109) 3.
Traditional two-tier client server architecture Traditional
two-tier
client
server
architecture
menyediakan banyak batasan komponen.
Gambar 2.4 Traditional two-tier client server architecture (Connoly & Begg, 2010: 110)
15 4.
Three-tier client server architecture Three-tier
client
server
architecture
merupakan
perkembangan dari two-tier server yang dibuat untuk memecahkan masalah dalam perusahaan.
Gambar 2.5 Three-tier client server architecture (Connoly & Begg, 2010: 113) Menurut Connoly & Begg (2010: 113), Three-tier client server memiliki 3 bagian yang masing-masing dijalankan dengan tugas yang berbeda, diantaranya :
•
User
interface,
yang
dijalankan
didalam
komputer pengguna akhir.
•
Business logic dan data processing layer yang dijalankan pada server dan server aplikasi.
•
DBMS menyimpan data yang dibutuhkan pada middle tier. Tier dijalankan terpisah dan disebut server basis data.
16 5.
N-tier architecture N-tier architecture mengembangkan ke banyak tier dengan menambahkan tier agar lebih fleksibel.
2.1.2.3
Komponen DBMS DBMS memiliki
kompleksitas
yang
tinggi
dan
kecanggihan perangkat lunak yang menyediakan berbagai layanan. DBMS dibagi menjadi beberapa bagian komponen perangkat lunak atau modul, yang masing-masing ditugaskan secara spesifik.
Gambar 2.6 Components of basis data manager (Connoly & Begg, 2010: 129)
17 Berikut ini merupakan komponen-komponen perangkat lunak DBMS menurut Connoly & Begg (2010: 129), yaitu: •
Authorization control Pada modul ini mengkonfirmasikan apakah pengguna memiliki kebutuhan akan hak akses sesuai dengan permintaan.
•
Command processor Ketika telah melewati proses sebelumnya, setiap sistem mengkonfirmasikan bahwa pengguna telah memiliki hak akses untuk menjalankan operasi.
•
Integrity checker Dalam sebuah operasi yag mengubah basis data, integrity checker mengecek apakah permintaan operasi telah sesuai dengan kebutuhan integritas.
•
Query optimizer Pada modul ini menentukan strategi optimal untuk pengeksekusian query.
•
Transaction manager Pada modul ini dibutuhkan kinerja sebuah proses operasi yang menerima transaksi.
•
Scheduler Pada modul ini bertanggungjawab untuk menjamin operasi yang terjadi dalam basis data tanpa ada kesalahan satu sama lain.
18 •
Recovery manager Pada modul ini menjamin basis data konsisten dan tanggung jawab terhadap transaksi yang dijalankan.
•
Buffer manager Pada modul ini tanggungjawab terhadap kiriman data antara memori dan media penyimpanan seperti disk dan tape. Buffer manager biasa dikenal dengan sebutan cache manager.
2.1.2.4
Keuntungan DBMS . Menurut Connoly & Begg (2010: 77-80), Database Management System memiliki beberapa keuntungan berikut adalah keuntungan yang diberikan DBMS, yaitu : 1.
Control of redudancy Basis data menghilangkan redudansi pada data yang disimpan dengan mengintegrasikan file yang memiliki kesamaan data. Basis data tidak tidak menghilangkan seluruh redudansi data, namun mengontrol jumlah redudansi data pada basis data.
2.
Data consistency Dengan mengeleminasi atau mengontrol redudansi data, DBMS memungkinkan dalam mengurangi resiko ketidak-konsekuensian. Jika data yang disimpan dalam basis data hanya sekali, maka perubahan data tersebut
19 juga hanya sekali dan nilai tersebut tersedia bagi pengguna. 3.
More information from the same amount data DBMS mengintergrasikan operasional data sehingga memiliki kemampuan untuk
memperoleh informasi
melalui data yang sama bagi organisasi. 4.
Improved security Keamanan basis data merupakan perlindungan basis data terhadap pengguna yang tidak memiliki hak akses.
5.
Economy of scale Dengan mengkombinasikan seluruh data operasional organisasi dalam satu basis data dan membuat sebuah set aplikasi yang dijalankan dalam satu sumber data dapat menekan cost.
6.
Increased productivity DBMS menyediakan banyak fungsi-fungsi standar. DBMS dapat menyederhanakan aplikasi basis data sehingga
dapat
menaikkan
produktifitas
dan
mengurangi waktu pengembangan. 7.
Improved data accessibility and responsiveness DBMS mengintegrasikan data yang dapat diakses secara langsung kepada pengguna akhir sehingga memiliki banyak fungsi.
20 2.1.2.5
Kekurangan DBMS Menurut Connoly & Begg (2010: 80), Database Management System memiliki beberapa kekurangan, yaitu : 1.
Kompleksitas DBMS membutuhkan beberapa software yang sangat kompleks. Basis data design dan development, data dan basis data administrator, dan pengguna akhir harus memahami fungsi-fungsi karena jika terjadi kesalahan maka akan menyebabkan masalah serius kepada organisasi.
2.
Ukuran Kompleksitas sebuah basis data membutuhkan software yang besar, termasuk disk space
yang besar dan
memori yang cukup untuk mengefisiensikan aplikasi basis data ketika dijalankan.
2.1.3 Arsitektur Basis Data Menurut Connoly & Begg (2010: 86), Terdapat tiga tingkatan arsitektur untuk membedakan pandangan pengguna basis data secara fisik, yaitu :
21
Gambar 2.7 The ANSI-SPARC three level architecture (Connoly & Begg, 2010: 35) 1. Tingkat eksternal Tingkat eksternal merupakan sudut pandang pengguna terhadap basis data. Pada tingkat ini menjelaskan seluruh bagian basis data yang bersifat relevan terhadap seluruh pengguna. Tingkat eksternal terdiri dari beberapa pandangan yang berbeda dari pengguna eksternal basis data. Setiap pengguna memiliki pandangan nyata yang digambarkan melalui bentuk yang dikenal pengguna. 2. Tingkat konseptual Tingkat konseptual adalah sebuah pandangan terhadap basis data. Pada tingkat ini menjelaskan data apa yang disimpan didalam basis data dan hubungan antar data. 3. Tingkat internal Tingkat internal adalah sebuah gambaran nyata dari basis data pada komputer. Pada tingkat ini menjelaskan bagaimana data disimpan didalam basis data.
22 2.1.4 Database Language Menurut Connoly & Begg (2010: 91), menerangkan bahwa data language memiliki dua bagian, yaitu :
• Data Definition Language (DDL) Menurut Connoly & Begg (2010: 92), menerangkan bahwa DDL merupakan sebuah bahasa pemrograman yang menyediakan DBA atau pengguna untuk mendeskripsikan dan menentukan nama entitas, atribut, dan hubungan yang dibutuhkan aplikasi yang digabungkan secara integritas.
DDL juga digunakan untuk
menetapkan skema basis data.
• Data Manipulation Language (DML) Menurut Connoly & Begg (2010: 92), menerangkan bahwa DML merupakan sebuah bahasa pemrograman yang menyediakan beberapa set operasi untuk mendukung operasi data manipulasi dalam sebuah data yang berperan didalam basis data. Berikut ini adalah operasi yang dilakukan oleh DML yaitu :
•
Memasukkan data baru ke dalam basis data.
•
Memodifikasikan penyimpanan data dalan basis data.
•
Memperbanyak data didalam basis data.
•
Menghapus data didalam basis data.
DML dibedakan menjadi dua tipe, yaitu :
•
Procedural DML Menurut Connoly & Begg (2010: 93), procedural DML adalah sebuah bahasa yang memungkinkan pengguna untuk menjelaskan data apa yang dibutuhkan dan bagaimana
23 mendapatkan data tersebut. Procedural DML memberikan hak kepada pengguna atau seorang programer untuk menspesifikasikan data yang dibutuhkan dan bagaimana mendapatkannya.
•
Non procedural DML Menurut Connoly & Begg (2010: 93), non procedural DML adalah sebuah bahasa yang memungkinkan pengguna untuk menekankan
kepada
data
yang
dibutuhkan
daripada
bagiamana data tersebut didapatkan. Non prosedural DML menspesifikasi data
yang
dibutuhkan
secara
tunggal.
Pengguna menspesifikasikan data yang dibutuhkan tanpa menspesifikasikan bagaimana tersebut ditemukan.
2.1.5 Fact Finding Dalam langkah mengumpulkan dan menganalisis informasi terdapat teknik mengumpulkan informasi yang disebut Fact Finding Technique. Dalam pengembangan basis data biasanya menggunakan Fact Finding Technique, yang memiliki lima pilihan,diantaranya : 1. Examining Documentation Menurut Connoly & Begg (2010: 344),
menerangkan bahwa
examining documentation atau pengujian dokumen berguna ketika menginginkan keuntungan dari pengetahuan yang didapat untuk mengetahui basis data apa yang ingin dibangun.
24 2. Interviewing Interviewing atau wawancara merupakan teknik yang sering dipakai dan sangat berguna. Wawancara dilakukan untuk mengumpulkan informasi secara individual dengan cara bertatap muka
langsung.
Teknik
wawancara
dilakukan
dengan
berkomunikasi secara berhadapan langsung sehingga lebih efektif dan efisien, selain itu interview juga dapat menilai suatu perbedaan prioritas, opini, motivasi, dan secara personaliti. 3. Observing the Enterprise in Operation Observasi merupakan teknik yang sangat efektif untuk mengetahui sebuah sistem. Dengan menggunakan teknik observasi dapat berpartisipasi atau melihat aktifitas yang terjadi secara langsung sehingga memudahkan untuk mempelajari sebuah sistem. 4. Research Menurut Connoly & Begg (2010: 346), menerangkan bahwa penelitian berguna dalam meneliti aplikasi dan masalah dengan menggunakan jurnal, buku referensi, maupun sumber dari internet sebagai sumber pengetahuan informasi. 5. Questionaires Menurut Connoly & Begg (2010: 346), menerangkan bahwa kuisioner merupakan sebuah cara mengumpulkan data dalam ukuran yang besar dengan mengontrol jawaban.
25 2.1.6 Database System Development Lifecycle Menurut Connoly & Begg (2010: 313), menerangkan bahwa Database System Development Lifecycle terdiri dari :
Gambar 2.8 The stages of the Database System Development Lifecycle Connoly & Begg (2010: 314)
2.1.6.1
Perencanaan Basis Data Menurut Connoly & Begg (2010: 313), menerangkan bahwa perencanaan basis data adalah suatu aktifitas manajemen yang menyediakan langkah-langkah dalam Database
System
Development
Lifecycle
agar
dapat
direalisasikan secara efektif dan efisien. Database planning harus diintegrasikan secara keseluruhan dengan strategi sistem informasi dalam sebuah organisasi.
26 2.1.6.2
Definisi Sistem Menurut Connoly & Begg (2010: 316), menerangkan bahwa definisi sistem adalah mendeskripsikan ruang lingkup dan batasan dalam sistem basis data dan pandangan pengguna.
2.1.6.3
Pengumpulan Kebutuhan dan Analisis Menurut Connoly & Begg (2010: 316), menerangkan bahwa Pengumpulan kebutuhan dan analisis adalah proses mengumpulkan dan menganalisis informasi mengenai bagian organisasi yang didukung dengan sistem basis data dan informasi
ini
digunakan
untuk
mengidentifikasikan
kebutuhan sistem baru. Terdapat tiga pendekatan utama untuk mengelola persyaratan dengan tampilan (view), yaitu : •
Pendekatan tersentralisasi Pendekatan tersentralisasi adalah kebutuhan untuk setiap user view yang digabungkan kedalam satu kumpulan kebutuhan untuk sistem basis data yang baru. Model data menggambarkan seluruh user view yang dibuat selama perancangan basis data.
•
Pendekatan integrasi tampilan Pendekatan integrasi tampilan adalah kebutuhan untuk setiap user view yang digunakan untuk membangun list yang terpisah. Model data menggambarkan setiap user
27 view dibuat dan kemudian digabungkan kedalam tahapan perencanaan basis data. •
2.1.6.4
Gabungan dari kedua pendekatan tersebut
Perancangan Basis Data Menurut Connoly & Begg (2010: 320), menerangkan bahwa perancangan basis data adalah sebuah proses untuk membuat
suatu
perancangan
yang
mendukung
misi
perusahaan dan misi objektif untuk keperluan sistem basis data. Dalam pendekatan perancangan basis data terdapat dua pendekatan, yaitu : •
Pendekatan Bottom-up Pada pendekatan ini dimulai dengan mengetahui atribut dasar seperti entitas dan hubungan dengan menganalisis kumpulan antar atribut yang dikelompokkan kedalam suatu relasi yang merepresentasikan tipe dari entitas dan hubungan antar entitas.
•
Pendekatan Top-down Pendekatan ini diawali dengan pembentukan model data yang berisi beberapa high-level entitas dan hubungan dan kemudian digunakan untuk memperbaiki top-down secara berturut-turut untuk mengindentifikasi lower-level entitas, hubungan, dan atribut lainnya.
Menurut Connoly & Begg (2010: 322), terdapat 3 tahap dalam desain basis data , yaitu :
28 •
Perancangan Basis Data Konseptual Perancangan basis data konseptual adalah sebuah proses dalam menentukan model data yang digunakan dalam
perusahaan.
Pada
tahap
ini
melibatkan
pembuatan konseptual data model sebagai bagian dari perusahaan. dokumen
Model
data
informasi
dibangun
sesuai
menggunakan
dengan
spesifikasi
kebutuhkan pengguna. •
Perancangan Basis Data Logikal Perancangan basis data logikal adalah sebuah proses merancang model data yang digunakan dalam sebuah perusahaan berdasarkan spesifikasi model data. Pada tahap kedua ini mengetahui hasil dari pembuatan logikal model data dalam sebuah perusahaan. Logikal model data dibuat sebagai langkah awal dalam memilih dan memetakan logikal model data. Logikal model data didasari pada target model data dalam basis data seperti hubungan antar model data.
•
Perancangan Basis Data Fisikal Perancangan basis data fisikal adalah sebuah proses dalam memberikan gambaran implementasi dalam basis data di dalam media penyimpanan, dapat digambarkan
dengan
hubungan-hubungan,
file
organisasi, dan indeks-indeks yang digunakan untuk mencapai keefisiensian dalam mengakses data.
29
2.1.6.5
Pemilihan DBMS (opsional) Menurut Connoly & Begg (2010: 325), menerangkan bahwa pemilihan DBMS adalah sebuah pemilihan yang tepat terhadap DBMS untuk mendukung aplikasi basis data. Terdapat beberapa langkah dalam melakukan pemilihan DBMS, yaitu : •
Menentukan referensi penelitian.
•
Membuat daftar dua atau 3 produk.
•
Mengevaluasi produk.
•
Merekomendasikan
pemilihan
dan
menghasilkan
laporan. 2.1.6.6
Perancangan Aplikasi Menurut Connoly & Begg (2010: 329), menerangkan bahwa perancangan aplikasi adalah merancang user interface atau tatap muka pengguna dan program aplikasi yang digunakan dan diproses oleh basis data. Dalam Terdapat dua aspek dalam perancangan aplikasi yaitu : •
Transaction Design Menurut Connoly & Begg (2010: 330), transaksi adalah sebuah kegiatan atau rangkaian kegiatan dalam carried out oleh pengguna tunggal atau program aplikasi yang mengakses atau merubah isi dalam basis data.
30 •
User Interface Design Guidelines Sebelum mengimplementasikan form atau report, harus memikirkan perencanaan layout. Berikut adalah user interface design guideline, yaitu : •
Meaningful title Dalam
pemberian
nama
harus
jelas
dan
menjelaskan kegunaan suatu form atau report. •
Comprehensible instructions Menggunakan terminologi yang familiar bagi pengguna untuk menyampaikan instruksi dengan format standar dan menyediakan helpscreen untuk mendapatkan informasi tambahan.
•
Logical grouping and sequencing of fields Fields yang saling berhubungan diposisikan dengan form atau report yang sama. Urutan fields harus bersifat logis dan konsisten.
•
Visually appealing layout of the form Form atau report harus ditampilkan dengan menarik.
•
Familiar field labels Menggunakan label yang familiar.
•
Consistent terminology and abbreviations Terminologi dan singkatan harus konsisten.
•
Consistent use of color
31 Dalam penggunaan warna harus dibedakan sesuai field. •
Visible space and boundaries for data-entry fields Total jumlah tempat field harus diketahui oleh pengguna sehingga pengguna mengetahui dimana memasukkan value kedalam field.
•
Convinient cursor movement Pengguna
dapat
menjalankan
operasi
yang
diinginkan dengan menggerakkan cursor pada form atau report. •
Error correction for individual characters and entire field. Pengguna
dapat
dengan
mudah
dalam
menjalankan operasi sesuai dengan keiinginan dengan melakukan perubahan pada nilai field. •
Error messages for unacceptable values Jika terjadi kesalahan dalam memasukkan data ke dalam field, maka akan muncul error message.
•
Explanatory messages for fields Ketika pengguna meletakkan kursor pada field, keterangan
mengenai
field
tersebut
harus
ditampilkan. •
Completion signal Ketika field telah diisi semua, terdapat indikator bahwa suatu proses telah dilaksanakan.
32
2.1.6.7
Prototyping (Opsional) Menurut Connoly & Begg (2010: 333), menerangkan bahwa prototyping adalah membuat model kerja suatu aplikasi basis data, yang tidak memiliki semua fitur yang dimiliki oleh sistem final. Terdapat dua macam strategi dalam prototyping, yaitu : •
Prototyping kebutuhan Requirement
Prototyping
menggunakan
prototype
untuk menentukan kebutuhan dari aplikasi basis data yang diinginkan dan ketika kebutuhan itu terpenuhi maka prototype akan dibuang. •
Prototyping evolusioner Prototyping evolusioner digunakan untuk tujuan yang sama. perbedaannya prototype tidak dibuang tetapi dengan pengembangan lanjutan menjadi aplikasi basis data yang digunakan.
2.1.6.8
Implementasi Menurut Connoly & Begg (2010: 333), menerangkan bahwa implementasi merupakan realisasi fisik dari basis data dan desain aplikasi yang telah dirancang.
33 2.1.6.9
Konversi dan Pemasukan Data Menurut Connoly & Begg (2010: 344), menerangkan bahwa konversi dan pemasukan data adalah pemindahan data yang ada kedalam basis data baru dan mengkonversikan aplikasi yang ada agar dapat digunakan pada sistem basis data yang baru. Tahap ini dilakukan ketika basis data lama digantikan dengan sistem basis data baru.
2.1.6.10
Pengujian Menurut Connoly & Begg (2010: 334), menerangkan bahwa pengujian merupakan suatu proses mengeksekusi program aplikasi dengan tujuan untuk menemukan kesalahan. pengujian dilakukan secara menyeluruh pada aplikasi basis data.
2.1.6.11
Pemeliharaan Operasional Menurut Connoly & Begg (2010: 335), menerangkan bahwa pemeliharaan operasional adalah suatu proses pengawasan dan pemeliharaan sistem setelah instalasi.
34 2.1.7 Entity-Relationship Model 2.1.7.1
Tipe Entitas Menurut Connoly & Begg (2010: 372), menerangkan bahwa tipe entitas adalah sekelompok dengan sifat yang sama,
yang
diidentifikasi
oleh
perusahaan,
memiliki
eksistensi independen. Tipe entitas memiliki dua kelompok, yaitu : •
Tipe entitas kuat Tipe entitas kuat adalah sebuah jenis entitas yang tidak tergantung pada keberadaan beberapa jenis entitas lainnya.
•
Tipe entitas lemah Tipe entitas lemah adalah jenis entitas yang tergantung pada keberadaan beberapa jenis entitas lainnya.
Gambar 2.9 Strong entity type called Client and Weak entity type called Preference (Connoly & Begg, 2010: 384) 2.1.7.2
Tipe Hubungan Menurut Connoly & Begg (2010: 346), menerangkan bahwa relationship types atau tipe hubungan adalah satu set relasi antara satu atau lebih tipe entitas yang berpartisipasi. setiap jenis relasi diberi nama yang menggambarkan
35 fungsinya masing-masing.tipe hubungan memiliki beberapa tipe, yaitu : •
Degree of Relationship Type Degree of relationship types adalah jumlah jenis entitas yang berpartisipasi dalam sebuah relasi.
•
Recursive Relationship Recursive relationship adalah jenis relasi di mana tipe entitas yang sama berpartisipasi lebih dari sekali dalam peran yang berbeda.
2.1.7.3
Atribut Menurut Connoly & Begg (2010: 379), menerangkan bahwa atribut adalah properti dari sebuah entitas atau dari sebuah tipe relasi. Atribut dikelompokkan menjadi : •
Simple and composite Attributes Simple attribute adalah atribut terdiri dari komponen tunggal dengan eksistensi independen. atribut ini tidak dapat dibagi lagi menjadi komponen yang lebih kecil. Composite attribute adalah atribut yang terdiri dari beberapa komponen, dengan eksistensi independen pada masing-masing komponen. atribut ini dapat dibagi menjadi komponen yang lebih kecil dengan eksistensi independen.
36 •
Single-valued and Multi-valued Attributes single-valued attributes adalah atribut yang memegang nilai tunggal untuk setiap kejadian dari suatu entitas. Multi-valued attributes adalah atribut yang memegang beberapa nilai untuk setiap kejadian dari suatu entitas.
•
Derived Attributes Derived attributes adalah atribut yang merupakan nilai yang diturunkan dari nilai atribut yang berhubungan atau set atribut, yang belum tentu dalam jenis entitas yang sama.
2.1.7.4
Keys Menurut Connoly & Begg (2010: 381), menerangkan bahwa keys terdiri dari beberapa tipe, yaitu : •
candidate key adalah set minimal atribut yang mengidentifikasi setiap kemunculan jenis entitas secara unik.
•
Primary Key\adalah candidate key yang dipilih untuk mengidentifikasi setiap kemunculan jenis entitas secara unik.
•
Composite Key adalah candidate key yang terdiri dari dua atau lebih atribut.
37 2.1.7.5
Batasan Struktural Batasan struktural harus merefleksikan batasan dari sebuah hubungan. Multiplicity adalah jumlah (atau range), dari kejadian yang mungkin terjadi dari suatu tipe entitas yang mungkin berhubungan dengan kejadian tunggal dari jenis entitas terkait melalui relasi tertentu. •
One-to-one (1:1), Relationship
Gambar 2.10 One-to-one (1:1), Relationship (Connoly & Begg, 2010: 386) •
One-to-many (1:*), Relationship
Gambar 2.11 One-to-many (1:*), Relationship (Connoly & Begg, 2010: 387) •
Many-to-many (*:*), Relationship
Gambar 2.12 Many-to-many (*:*), Relationship (Connoly & Begg, 2010: 390)
38 •
Multiplicity for Complex Relationship Complex relationship adalah jumlah (atau range), dari kejadian yang mungkin terjadi dari suatu tipe entitas dalam relasi n-ary ketika nilai-nilai lainnya (n-1), adalah tetap.
•
Cardinality Relationship Cardinality adalah menggambarkan jumlah maksimum kejadian yang terjadi dalam relasi untuk entitas yang berpartisipasi dalam jenis relasi yang diberikan.
•
Participation Relationship Participation relationship menentukan apakah seluruh atau beberapa entitas terlibat dalam relationship.
2.1.8 Normalisasi Menurut Connoly & Begg (2010: 416), menerangkan bahwa normalisasi adalah sebuah teknik untuk menghasikan beberapa hubungan yang dihubungkan dengan properti sesuai dengan permintaan data dalam sebuah
perusahaan.
Untuk
menggunakan
normalisasi
perlu
mengidentifikasi beberapa set hubungan yang mendukung permintaan perusahaan. Terdapat beberapa karakteristik dari beberapa hubungan, yaitu : • Jumlah minimal atribut yang dibutuhkan untuk mendukung permintaan data dalam perusahaan. • Atribut dengan close logical relationship yang ditemukan dalam hubungan yang sama.
39 • Jumlah minimal redudansi, dengan setiap atribut diwakili oleh salah satunya.
2.1.8.1
The Process of Normalization Menurut Connoly & Begg (2010: 428), menerangkan bahwa normalisasi merupakan sebuah teknik umum untuk menganalisis hubungan yang didasari oleh primary key. Teknik tersebut melibatkan setiap peraturan yang dapat digunakan untuk menguji hubungan individual sehingga basis data capat dinormalisasikan dari berbagai arah.
Gambar 2.13 Diagrammatic illustration of the process of normalization (Connoly & Begg, 2010: 429)
40
2.1.8.2
Unnormalized Form (UNF) Menurut Connoly & Begg (2010: 430), menerangkan bahwa unnormalized form adalah sebuah tabel yang mengandung satu atau lebih repeating group.
2.1.8.3
First Normal Form (1NF) Menurut Connoly & Begg (2010: 430), menerangkan bahwa first normal form adalah sebuah hubungan yang memotong setiap baris dan kolom yang hanya mengandung satu nilai.
2.1.8.4
Second Normal Form (2NF) Menurut Connoly & Begg (2010: 434), menerangkan bahwa second normal form adalah hubungan yang terdapat dalam first normal form dan setiap atribut bukan primary key full functional dependency pada primary key.
2.1.8.5
Third Normal Form (3NF) Menurut Connoly & Begg (2010: 436), menerangkan bahwa third normal form merupakan sebuah hubungan dalam first dan second normal form dimana tidak ada atribut non-primary key bergantung pada primary key.
41 2.1.9 Flowchart Menurut Hall (2008: 61), menerangkan bahwa flowchart adalah sistem yang direpresentasi dalam bentuk grafik yang menjelaskan relasi fisikal
antar
key
entities.
Flowchart
dapat
digunakan
untuk
merepresentasikan aktifitas manual, aktifitas proses komputer, atau keduanya. Menurut Williams & Sawyer (2011: 504), menerangkan bahwa flowchart adalah sebuah diagram yang menggambarkan rangkaian secara rinci (algoritma atau alur logikal), yang di butuhkan untuk menyelesaikan sebuah masalah program dalam bentuk grafik. Menurut Romney & Steinbart (2009: 92), menerangkan bahwa flowchart adalah teknik analisis yang digunakan untuk mendeskripsikan beberapa aspek pada sistem informasi secara jelas, ringkas dan logis. Flowchart
menggunakan
sebuah
set
simbol
standar
untuk
mendeskripsikan prosedur proses transaksi yang digunakan oleh perusahaan dan pergerakan data dalam sistem dalam bentuk gambar. Menurut definisi diatas dapat diartikan bahwa flowchart adalah sebuah teknik analisis dengan cara penggambaran alur suatu proses bisnis perusahaan untuk kepentingan analisis.
2.1.10
Metodologi Perancangan Basis Data Menurut Connoly & Begg, (2010 : 463), menerangkan bahwa metodologi perancangan basis data adalah pendekatan secara terstruktur dengan menggunakan prosedur, teknik, alat-alat, dan dokumentasi untuk mendukung dan memfasilitasi proses desain.
42 Metodologi perancangan basis data terdiri dari tiga tahap, yaitu perancangan basis data konseptual, logikal, dan fisikal. 2.1.10.1
Perancangan Basis Data Konseptual Perancangan basis data konseptual adalah sebuah proses mengkonstruksi model data yang digunakan dalam perusahaan diluar pertimbangan fisik. Berikut adalah tahap-tahap dalam perancangan basis data konseptual : Langkah pertama :Membangun model data konseptual 1.1. Mengidentifikasi tipe entitas. Tahap ini bertujuan untuk mengidentifikasi entitas utama yang dibutuhkan. 1.2. Mengidentifikasi tipe hubungan. Tahap ini bertujuan untuk mengidentifikasi hubungan yang terdapat antara entitas yang telah diidentifikasi. Hubungan ditandai dengan kata kerja. 1.3. Mengidentifikasi dan menghubungkan atribut dengan tipe entitas atau hubungan. Tahap ini bertujuan untuk menghubungkan atribut dengan entitas maupun hubungan. 1.4. Menentukan domain atribut. Tahap ini bertujuan untuk menentukan domain terhadap atribut pada model data konseptual. Domain tersebut menggambarkan nilai dari setiap atribut.
43
1.5. Menentukan atribut candidate key dan primary key. Tahap ini bertujuan untuk mengidentifikasi candidate key yang akan dipilih satu untuk menjadi primary key. 1.6. Mempertimbangkan penggunaan konsep pemodelan lanjutan (optional). Tahap ini bertujuan untuk mempertimbangkan penggunaan konsep pemodelan lebih lanjut seperti adanya agregasi, generalisasi. 1.7. Mengecek model untuk redudansi. Tahap ini bertujuan untuk memeriksa adanya perulangan dalam model dengan memeriksa hubungan. 1.8. Memvalidasi model konseptual lokal terhadap transaksi pengguna. Tahap ini bertujuan untuk memastikan bahwa model data konseptual telah mendukung transaksi yang dibutuhkan pengguna 1.9. Meninjau kembali model data konseptual lokal dengan pengguna. Tahap ini bertujuan untuk meninjau model data konseptual dengan user untuk memastikan bahwa model telah sesuai dengan kebutuhan perusahaan.
44 2.1.10.2
Perancangan Basis Data Logikal Perancangan basis data logikal adalah sebuah proses mengkontruksi model dari informasi yang digunakan dalam perusahaan berdasarkan model data spesifik, diluar dari DBMS khusus serta pertimbangan fisikal lainnya. Langkah kedua : membangun dan memvalidasi model data logikal 2.1
Menghilangkan fitur yang tidak sesuai dengan model relasional (optional). Langkah-langkah yang dilakukan pada tahap ini adalah: 1.
Menghilangkan tipe relasi many-to-many (*..*)
2.
Menghilangkan tipe relasi recursive many-tomany (*..*)
2.2
3.
Menghilangkan tipe relasi yang kompleks
4.
Menghilangkan atribut multi-valued
Menurunkan relasi untuk model data logikal. Tahap ini bertujuan untuk membuat relasi untuk model data logikal
yang merepresentasikan entitas,
relasi dan atribut yang telah diidentifikasi. 2.3
Memvalidasi relasi menggunakan normalisasi. Tahap ini bertujuan untuk memvalidasi relasi dalam model data logikal menggunakan normalisasi.
45 2.4
Memvalidasi relasi dengan transaksi pengguna. Tahap ini bertujuan untuk memastikan relasi dalam model data logikal telah mendukung transaksitransaksi yang dibutuhkan.
2.5
Mendefinsikan batasan integritas. Tahap ini bertujuan untuk memeriksa apakah kendala integritas telah direpresentasikan dalam model data logikal.
2.6
Meninjau
kembali
model
data
logikal
dengan
pengguna. Tahap ini bertujuan untuk meninjau model data logikal dengan user untuk memastikan bahwa model telah sesuai dengan kebutuhan perusahaan. 2.7
Menggabungkan model data logikal lokal dengan model global. Tahap ini bertujuan untuk menggabungkan model data logikal lokal menjadi suatu kesatuan model data logikal global yang merepresentasikan semua user view dalam basis data.
2.8
Memvalidasi model data logikal global. Tahap ini bertujuan untuk memvalidasi relasi yang dibuat dari model data logikal global dengan menggunakan teknik normalisasi dan memastikan relasi yang dibuat dapat mendukung transaksi.
46 2.9
Mengecek untuk perkembangan masa depan. Tahap ini bertujuan untuk menentukan apakah terjadi perubahan yang signifikan pada masa yang akan datang dan untuk memperkirakan apakah model data logikal dapat mengakomodasi perubahan tersebut
2.10 Meninjau kembali model data logikal global dengan pengguna. Tahap ini bertujuan untuk meninjau model data logikal dengan user untuk memastikan bahwa model telah sesuai dengan kebutuhan perusahaan.
2.1.10.3
Perancangan Basis Data Fisikal Perancangan basis data fisikal adalah sebuah proses memproduksi deskripsi dari implementasi basis data terhadap tempat penyimpanan sekunder, hal ini mendefinisikan relasi dasar, organisasi file dan indeks yang digunakan untuk keefisienan
data dan
batasan
integritas dan
batasan
keamanan. Langkah keempat : menerjemahkan model data logikal untuk target DBMS. 5.1
Mendesain relasi dasar. Tahap
ini
bertujuan
untuk
menentukan
bagaimana untuk merepresentasikan relasi dasar yang telah diidentifikasi pada tahap model data logikal kedalam DBMS yang dituju.
47 5.2
Mendesain representasi turunan data. Tahap
ini
bertujuan
untuk
menentukan
bagaimana untuk merepresentasikan turunan data yang telah diidentifikasi pada tahap model data logikal kedalam DBMS yang dituju. 5.3
Mendesain batasan perusahaan. Tahap ini bertujuan untuk merancang batasan perusahaan pada DBMS yang dituju.
Langkah kelima : mendesain representasi fisikal 5.1
Menganalisis transaksi. Tahap ini bertujuan untuk memahami fungsional dari transaksi yang akan berjalan dalam basis data dan untuk menganalisis transaksi yang penting.
5.2
Memilih organisasi file. Tahap
ini
bertujuan
untuk
menentukan
pengorganisasian file yang efisien untuk setiap relasi dasar. 5.3
Mengecek indeks. Tahap ini bertujuan untuk mengetahui apakah dengan
penambahan
indeks
akan
meningkatkan
performa dari sistem. 5.4
Mengestimasi kebutuhan ruang penyimpanan. Tahap ini bertujuan untuk mengestimasi jumlah ruang penyimpanan yang dibutuhkan oleh basis data.
48 Langkah keenam : mendesain tampilan pengguna (user) Tahap ini bertujuan untuk merancang user view yang diidentifikasi pada tahap
requirements collection and
analysis pada tahap DBLC. Langkah ketujuh : mendesain mekasnisme keamanan Tahap ini bertujuan untuk merancang mekanisme keamanan untuk basis data yang ditetapkan oleh user pada tahap
requirements collection and analysis pada tahap
DBLC. 2.2
Teori Khusus 2.2.1 Operational Menurut Rusell & Taylor (2009 : 2), menerangkan bahwa operational adalah fungsi atau sistem yang mengubah input ke dalam output
yang
lebih
besar.
Operational
meliputi
perancangan,
mengoperasikan, dan meningkat produktifitas sistem.
2.2.2 Material Management Dalam jurnal Wibisono (2005), Material Management memiliki fungsi utama yaitu untuk membantu manajemen dalam aktifitas seharihari dalam tipe bisnis apapun yang memerlukan konsumsi material, termasuk energi, dan pelayanan. Modul Material Management dalam SAP terintegrasikan dengan modul lainnya yaitu logistic dan financial accounting. Proses bisnis pada modul mm meliputi pembuatan RFQ, PO, goods receipt, invoice, dan pembayaran kepada pihak supplier. Dalam SAP, mm merupakan suatu modul manajemen persediaan dibanyak
49 tempat dalam sebuah perusahaan dan juga dapat menangani saham konsinyasi serta pengolahan pesanan berdasarkan kontrak.
2.2.3 Plant Maintenance Dalam jurnal Wibisono (2005), Modul Plant Maintenance berfungsi untuk mendukung dan mengontrol pemeliharaan peralatan, mengatur data perawatan, dan mengintegrasikan data komponen peralatan dengan aktifitas operasional yang sedang berjalan.Modul plant management pada SAP memfasilitasi penyediaan total productive maintenance untuk suatu pabrik dalam perusahaan dan perlengkapan produksinya. Modul ini membantu dari berbagai cara, seperti : • Memantau ketersediaan sumber daya, biaya, material, dan tenaga kerja. • Mengoptimalkan penggunaan sumber daya dan tenaga kerja. • Mengurangi biaya inspeksi. • Mengurangi down time.