Upload
ngokhuong
View
216
Download
0
Embed Size (px)
Citation preview
6
BAB 2
LANDASAN TEORI
2.1 Sistem Informasi
Sistem adalah sekumpulan komponen yang saling berhubungan, yang bekerja
sama untuk mencapai suatu tujuan dengan menerima masukan dan menghasilkan
keluaran melalui proses transformasi yang teratur. Hal ini juga dikemukakan oleh
Satzinger, Jackson, & Burd(2010, p6), yang mengatakan bahwa sistem adalah
kumpulan dari komponen yang tidak berhubungan satu sama lain, yang digunakan
bersama-sama untuk mencapai beberapa tujuan. Sistem terbagi menjadi tiga
komponen dasar yang saling berinteraksi atau fungsi dasar, yaitu :
- Input, yaitu bagian yang mencakup pengambilan elemen yang masuk ke dalam
sistem untuk di proses
- Proses, yaitu bagian yang mencakup perubahan input menjadi output.
- Output, yaitu bagian yang mencakup elemen yang dihasilkan dari proses untuk
mencapai tujuan yang diinginkan.
Informasi adalah data yang diolah sedemikian rupa sehingga menjadi suatu
hasil yang mempunyai arti bagi user tertentu. Hal ini juga dikemukakan oleh
Satzinger, Jackson, & Burd(2010, p7), informasi adalah data yang telah diproses atau
diorganisir menjadi sesuatu yang bermakna untuk seseorang. Informasi dibentuk dari
kombinasi daya yang diharapkan dapat memiliki makna bagi penerimanya
Berdasarkan pendapat para ahli diatas, dapat disimpulkan bahwa sistem
informasi adalah kumpulan komponen yang tidak berhubungan satu sama lain,
namun digunakan bersama-sama, diproses, disimpan dan menghasilkan hasil akhir
yaitu informasi untuk mencapai tujuan atau memenuhi kebutuhan. Hal ini
disampaikan juga oleh Satzinger, Jackson, dan Burd(2008, p8), yang mengatakan
7
bahwa sistem informasi adalah kumpulan komponen yang tidak berhubungan satu
sama lain yang dikumpulkan, di proses, di simpan, dan menghasilkan informasi yang
dibutuhkan.
Gambar 2.1.1 Sistem Informasi dan Komponen-Komponen
(Satzinger, Jackson, dan Burd, 2008, p8)
Pada Gambar 2.1.1, menjelaskan bahwa komponen-komponen yang dimiliki oleh
sistem Informasi, yaitu proses input dan output yang dijelaskan subbab 2.1 pada
halaman6, hardware yang dijelaskan pada halaman12 sub bab 2.3, people yang
dijelaskan pada halaman 11 sub bab 2.3, software yang dijelaskan pada halaman 11
sub bab 2.3, data yang dijelaskan pada halaman11 sub bab 2.3, prosedur yang
dijelaskan pada halaman11 sub bab 2.3.
2.2 Database
2.2.1 Data dan Database
Data dapat berupa catatan-catatan dalam kertas atau buku, ataupun tersimpan
sebagai file di dalam database yang dapat berupa angka-angka hasil dari sebuah
analisis dan observasi. Data digunakan sebagai bahan dalam suatu proses pengolahan
data. Pengertian data juga diperkuat oleh Connolly dan Begg (2010, p70) yang
8
mengemukakan bahwa data merupakan bagian terpenting dari komponen suatu
database. Data merepresentasikan objek dan kejadian serta nilai yang tersimpan
sehingga memiliki arti dan kepentingan kepada penggunanya. Data terdiri dari fakta-
fakta dan angka-angka yang secara relatif tidak memiliki arti bagi user atau fakta
mentah yang belum diolah.
Database merupakan tempat penyimpanan data yang sangat besar yang dapat
digunakan secara bersamaan oleh banyak departemen dan user, serta dibuat untuk
memperoleh informasi yang dibutuhkan oleh perusahaan.Databasemerupakan relasi
logical dari data yang terdiri atas entitas-entitas, atribut-atribut, serta relationship
dari informasi perusahaan. Database merupakan kumpulan data yang terogranisir,
dikumpulkan, dan saling berhubungan, yang akan berfungsi untuk memenuhi
kebutuhan informasi dari perusahaan atau organisasi.Hal ini juga disampaikan oleh
Connolly dan Begg(2010, p65), yang mengatakan bahwa database adalah
sekumpulan data beserta deskripsinya yang saling berhubungan secara logis, serta
didesain untuk memenuhi kebutuhan informasi suatu perusahaan.
2.2.2 System Boundary
System boundary adalah pengelompokan sub sistem dengan sub sistem lain,
dan berhubungan satu sama lain serta saling menerima input dan output. Seperti yang
dikemukakan olehSatzinger, Jackson, dan Burd(2008, p8), system boundary adalah
pemisahan antara sistem dan lingkungannya yang saling menerima input dan output.
Input dan output merupakan bagian yang sangat penting dari analisis dan
perancangan sisitem. Dalam sistem informasi, orang juga disebut sebagai key
components, dan orang tersebut melakukan beberapa hal dalam sistem kerja. Maka
dari itu terdapat boundary lainnya yang sangat penting bagi system analyst yaitu
9
automation boundaryyang merupakan bagian dari sistem yang terotomatisasi,
sedangkan bagian lainnya dikerjakan oleh orang.
Gambar 2.2.2.1The system boundary versus the automation boundary
(Satzinger, Jackson, dan Burd, 2008, p8)
Pada Gambar 2.2.2.1diatas menjelaskan struktur dari system boundary dengan
automation boundary. Automation boundary merupakan bagian yang otomatis dalam
sistem, tugas terselesaikan sendiri oleh computer, sedangkan system boundary
merupakan keseluruhan bagian, dimana terdapat automation boundary didalamnya.
2.2.3 Application Programs
Aplikasi adalah sebuah informasi yang digunakan untuk memecahkan
masalah, Penjelasan ini diperkuat oleh Satzinger, Jackson, dan Burd(2008, p47),
aplikasi adalah sebuah sistem informasi yang baru yang dapat memberi kepuasaan
kepada kebutuhan user dengan problem domain.Program aplikasi merupakan sebuah
program yang berhubungan dengan database, untuk menghasilkan informasi yang
dibutuhkan untuk pemenuhan kebutuhan. Hal ini diperkuat olehConnolly dan
Begg(2010, p67), program aplikasi adalah program komputer yang berinteraksi
10
dengan database yang akan membuat suatu pernyataan ke DBMS. Program aplikasi
membuat dan merawat database dan menghasilkan informasi.
2.3 Database Management System(DBMS)
DBMS adalah sistem manajemen operasi yang berupa peramgkat lunak yang
memungkinkanuser berinteraksi dengan program aplikasi dan database untuk
memenuhi kebutuhan akan informasi yang terus berkembang.Seperti yang
dikemukakan oleh Connolly dan Begg(2010, p66), DBMS adalah suatu sistem
perangkat lunak yang memungkinkan user berinteraksi dengan program aplikasi dan
database.
a. Fasilitas Database
Menurut Connolly dan Begg (2010, p66), DBMS menyediakan berbagai fasilitas
sebagai berikut :
- Fasilitas untuk mendefinisikan database, biasanya menggunakan Data
Definition Language (DDL). DDL mengizinkan user untuk
menspesifikasikan tipe dan struktur data, serta batasan aturan mengenai data
yang bisa disimpan ke dalam database tersebut.
- Fasilitas untuk mengizinkan user untuk menambah, mengubah, menghapus,
serta mendapatkan kembali data dari database, biasanya menggunakan Data
Manipulation Language (DML).
- Fasilitas untuk mengontrol akses ke database. Contohnya :
o Sistem keamanan, yang mencegah user yang tidak memiliki autoritas
untuk mengakses data. Sehingga user akan ditentukan terlebih dahulu
grant access nya.
11
o Sistem integrasi, yang memelihara konsistensi penyimpanan data,
sehingga databasemenjadi terintegrasi, data pun menjadi konsisten.
o Sistem kontrol pengembalian data, yang dapat mengembalikan data ke
keadaan sebelumnya apabila terjadi kegagalan perangkat keras atau
perangkat lunak.
o Katalog yang dapat diakses oleh pengguna, yang berisi deskripsi atau
penjelasan dari data di dalam database.
b. Komponen –Komponen DBMS
Komponen-komponen dari DBMS akan diidentifikasi menurut Connolly dan
Begg (2010, p66), terdapat lima komponen DBMS yaitu :
Gambar 2.3.1Komponen - komponen utama DBMS
(Connolly dan Begg, 2010, p68)
Error! Reference source not found.Gambar 2.3.1diatas menjelaskan komponen-
komponen utama yang terdapat pada DBMS, yaitu sebagai berikut :
- Hardware
Hardware atau perangkat keras ini dibutuhkan untuk menjalankan DBMS dan
aplikasi, hardware dari computer tunggal ke mainframe tunggal dari komputer-
komputer. Bagian dari hardware tergantung pada kebutuhan organisasi dan
DBMS yang digunakan.
12
Gambar 2.3.2Konfigurasi Hardware (Connolly dan Begg, 2010, p69)
Pada Gambar 2.3.2diatas terdiri atas server yang kecil, dengan central
serveryang berada di London yang merupakan backend dari DBMS. Central
serveradalah bagian dari DBMS yang mengatur dan mengontrol akses ke
database. Gambar diatas juga menunjukan beberapa komputer yang berada di
lokasi yang berbeda-beda yang menjadi bagian dari DBMS yang berinteraksi
langsung dengan user. Arsitektur ini disebut dengan client server, back end
adalah server, sedangkan front end merupakan client.
- Software
Software berupa DBMS itu sendiri, program aplikasi, sistem operasi, serta
jaringan perangkat lunak jika DBMS digunakan melalui suatu jaringan.
13
- Data
Data adalah komponen mendasar yang paling penting, yang akan diolah di
DBMS. Data merupakan jembatan penghubung antara komponen mesin
(hardware dan software) dan manusia (user). Databaseterdiri atas data
operasional dan metadata.
- Prosedur
Prosedur merupakan petunjuk dan aturan yang digunakan untuk merancang
database, userdari sistem dan staff yang mengatur database membutuhkan
prosedur yang terdokumentasi untuk tahu bagaimana cara menggunakan atau
menjalankan sistem.
- People
People merupakan orang yang terlibat didalam sistem, yang terdiri dari :
o Database Administrator (DBA)
Database dan DBMS merupakan satu kesatuan sumber yang harus di atur
seperti sumber lainnya, sehingga memerlukan peranan manusia untuk
mengaturnya. DBA bertanggung jawab untuk realisasi fisikal dari database,
termasuk desain fisikal databasedan implementasi, keamanan, dan
mengontrol integritas dan merawat sistem operasional.
o Database Designers
Database designer berfokus dengan mengidentifikasi data (entitas,
attributes), hubungan antar data, constraints dari data yang disimpan di
dalam database, memutuskan bagaimana desain logikal databasemenjadi
realisasi fisikal.
14
o Application Developers
Tugas dari application developers adalahketika database telah
diimplementasi, program aplikasi yang menyediakan fungsi yang
dibutuhkan oleh end-user harus diimplementasikan.
o End User
End user merupakan “client” dari database, yang di desain,
diimplementasikan dan di maintenance untuk melayani kebutuhan informasi
dari end user.
c. Kelebihan Database Management System
Terdapat beberapa kelebihan dengan menggunakan DBMS, menurut Connolly
dan Begg(2010, pp77-80), yaitu sebagai berikut :
- Mengontrol data yang berulang
Pendekatan databasemengeleminasi pengulangan data dengan mengintegrasikan
dokumen sehingga data sebelumnya tidak disimpan lagi untuk mengurangi
terjadinya pengulangan data.
- Konsistensi data
Dengan mengontrol eleminasi dan mengontrol pengulangan data, DBMS akan
mengurangi resiko adanya data yang tidak konsisten.
- Mendapatkan beberapa informasi dari data yang sama
Dengan mengintegrasi data operasional, memungkinkan organisasi untuk
memperolehinformasi turunanyang berbeda-beda dari data yang sama. Informasi
turunan yang dimaksud adalah informasi yang dihasilkan dari sumber yang
sama, namun informasi dihasilkan dapat berbeda-beda, sesuai dengan apa yang
dibutuhkan oleh user.
15
- Dapat berbagi data
Normalnya files hanya dimiliki oleh orang atau department yang digunakan,
namun di sisi lain databaseyang ada pada suatu organisasi dapat di bagi ke user
yang telah diberi hak akses. Biasanya jika aplikasi baru dibuat, maka akan
membutuhkan data yang sudah ada pada database, dan hanya menambah data
yang tidak disimpan, kemudian aplikasi baru juga dapat menggunakan fungsi
yang disediakan oleh DBMS, untuk mendefinisikan dan memanipulasi,
concurrency dan kontrol recovery.
- Meningkatkan integritas data
Database integrity menujuk pada validitas dan konsistensi data yang disimpan.
Integrity biasanya di tunjukan dengan constraints.
- Meningkatkan keamanan
Database security adalah perlindungan dari database untuk melindungi data dari
user yang tidak memiliki hak akses.
- Meningkatkan standarisasi
Memperbolehkan DBA mendefinisikan DBMS untuk kebutuhan standar.
Termasuk didalamnya departemen, organisasi, nasional, standar internasional
seperti format data untuk memfasilitasi peruktan daya antar sistem, penamaan,
dokumentasi standar, prosedur yang upate, dan access rule.
- Skala ekonomi
Menggabungkan semua data operasional organisasi kedalan satu databasedan
menciptakan sekumpulan aplikasi yang akan beroperasi didalam satu sumber
data yang akan mengurangi pengeluaran.
16
- Menyeimbangkan kebutuhan berdasarkan masalah
Setiap user atau department membutuhkan apa yang menjadi konflik kebutuhan
dengan user yang lain, dikarenakan databasedibawah kontrol dari DBA, DBA
dapat membuat keputusan tentang desain dan operasional menggunakan
database, yang akan menyediakan sumber terbaik untuk digunakan keseluruhan
perusahaan.
- Meningkatkan akses data.
Sebagai hasil dari integrasi, data yang melewati batasan department akan
langsung di akses di end user. Hal ini menyediakan sistem dengan fungsi yang
potensial.
- Meningkatkan produktivitas
DBMS menyediakan banyak fungsi standar yang programmer akan ditulis di file
based application.DBMS menyediakan low-level file-handling yang menjadi
typical didalam aplikasi program dan berfungsi supayaprogrammer lebih fokus
kepada fungsi yang spesifik dan dibutuhkan tanpa khawatir mengenai detil low-
level implementasi.
- Meningkatkan pemeliharaan data
Di sistem file-based, setiap program aplikasi mengakses data yang dibuat untuk
masing-masing program aplikasi, sehingga membuat program aplikasi sangat
bergantung pada data. deskripsi data dan cara untuk mengakses data di buat
kedalam setiap program aplikasi, membuat program bergantung pada data.
DBMS memisahkan deskripsi data dari aplikasi, sehingga ketika terjadi update
dari deskripsi data, maka terupdate di aplikasi.
17
- Meningkatkan concurrency
Beberapa sistem file-based, jika dua atau lebih user yang mengakses data yang
sama diwaktu yang bersamaan, memungkinkan informasi menjaditidak valid dan
integritas menurun . DBMS dapat mengatur akses concurrent databasesehingga
masalah seperti diatas tidak terjadi
- Meningkatkan proses backup dan recovery
Jika terjadi kerusakan sistem atau media, maka sistem file-based dapat
menyediakan, banyak tempat sistem file-based bertanggung jawab kepada user
untuk menyediakan sebuah ukuran untuk melindungi data dari kegagalan sistem
komputer atau program aplikasi.
d. Kekurangan DBMS
Selain terdapat kelebihan, DBMSjuga mempunyai kelemahan, yaitu sebagai
berikut :
- Kompleksitas
Provisi dari fungsi yang diharapkan dari DBMS yang baik dapat membuat
DBMS menjadi lebih kompleks. DBA, developers, database designer dan end-
users harus mengerti fungsi dan mengambil keuntungan. Kegagalan mengerti
sistem akan membuat keputusan desain yang buruk, yang mana akan memiliki
konsekuensi yang serius untuk organisasi.
- Ukuran
Kompleksitas dari fungsimembuat DBMS menjadi perangkat lunak yang besar,
sehingga memakan banyak memori.
- Biaya
18
Biaya dari DBMS bervariasi, dan tergantung dari lingkungan dan fungsi yang
disediakan, biaya tergantung dari seberapa banyak user.
- Penambahan biaya perangkat keras
Kebutuhan dari penyimpanan disk DBMS dan database memungkinkan untuk
membeli tambahan penyimpanan data.
- Biaya konversi
Dengan adanya DBMS dan hardware yang baru, maka diperlukan biaya untuk
training staff untuk menggunakan sistem ini, biaya ini yang mungkin menjadi
alasan utama mengapa beberapa organisasi lebih memilih menggunakan
program yang lama.
- Performa
Sistem file-based hanya digunakan untuk aplikasi yang spesifik saja, maka hasil
performanya baik. Namun DBMS digunakan untuk umum, jadi aplikasi bisa
lebih dari satu, hasil akhirnya, beberapa aplikasi tidak berjalan cepat sesuai yang
mereka gunakan, dikarenakan DBMS digunakan oleh beberapa apliasi yang
lainnya.
- Kemungkinan kegagalan yang lebih besar
Dikarenakan DBMS digunakan secara central, maka jika suatu saat terdapat
kegagalan dalam DBMS, maka aplikasi program dan user yang mengakses
DBMS tidak dapat menjalankan operasional.
e. Fungsi DBMS
Menurut Connolly dan Begg(2010, p99), DBMS memiliki beberapa fungsi, yaitu
sebagai berikut :
- Datastorage, retrieval dan update.
19
Sebuah DBMS harus menyediakan user dengan kemampuan untuk menyimpan,
mendapatkan, dan mengupdate data didalam database
20
- A user-accessible catalog
Sebuah DBMS harus menyediakan catalog yang dimana catalog tersebut berisi
deskripsi dari data yang disimpan dan di akses oleh user.
- Transaction support
Sebuah DBMS harus menyediakan mekanisme yang akan memastikan semua
update sesuai dengan transaksi yang dibuat.
- Concurrency control service
Sebuah DBMS harus menyediakan mekanisme untuk memastikan database di
perbaharui dengan benar ketika banyak user mengupdate database secara
bersamaan.
- Recovery services
Sebuah DBMS harus menyediakan mekanisme untuk recovering database jika
database mengalami kerusakan. Kerusakan database berpengaruh terhadap
operasional, sehingga proses perbaikan database dibutuhkan. Salah satunya
yaitu recovery database.
- Authorization services
Sebuah DBMS meyediakan mekanisme untuk memastikan hanya user yang
resmi saja yang bisa mengakses database.Sehingga user yang tidak didaftarkan
terlebih dahulu tidak bisa mengakses database, ini akan meningkatkan
keamanan data.
- Support for datacommunication
Sebuah DBMS harus mampu mengintegrasikan komunikasi antara software.
Ketika user mengakses database dari remote locationsm̧aka DBMS akan
menerima request communications messages yang dibuat oleh Data
21
Communications Messages (DCM) maka DBMS mampu berintegrasi dengan
bermacam,-macam DCM.
- Integrity services
Sebuah DBMS harus memastikan perubahan yang ada di dalam database sudah
melihat dari rules yang dipakai. Integritas biasanya ditampilkansebagai
constraint.
- Services to promote data independence
Sebuah DBMS harus ada fasilitas-fasilitas yang mendukung program
independence dari struktur actual dari database.
- Utility services
Sebuah DBMS harus menyediakan kumpulan dari utility services.Program utility
membantu DBA mengelola database menjadi efektif. Beberpa utilities
beroperasi pada external level, dan secara konsekuen diproduksi oleh DBA.
2.3.1 Client Server Architecture
Client Server Architecture merupakan program atau software yang saling
terhubung, antara client dan server. Server sebagai pusat atau sumber yang akan
memberikan informasi ke clients, maka sebaliknya clients akan menerima dari
server. Pernyataan ini juga diperkuat oleh Satzinger, Jackson, dan Burd (2010,
p342), yang menyatakan bahwa Client Server Architecture dibagi menjadi dua jenis,
yaitu client dan server. Server akan mengatur satu atau lebih sumber sistem
informasi atau menyediakan layanan, sedangkan Client akan berkomunikasi dengan
server untuk meminta sumber atau layanan dan server bertanggung jawab atas
permintaan client tersebut.
22
Gambar 2.3.1.1Client dan Server
(Satzinger, Jackson, dan Burd, 2008, p342)
Gambar 2.3.1.1diatas menjelaskan bahwa terdapat Client dan Server yang
mempunyai tugas masing-masing, yaitu Client bertugas untuk melakukan permintaan
akses database, lalu database server akan menerima dan memberikan jawaban atau
kode status kepada client. Database server merupakan pusat atau sumber, client
hanya membuat permintaan saja kepada server.
2.3.1 ORACLE 10g
Oracle 10g ialah software database yang terdiri dari kumpulan data dalam
suatu sistem manajemen basis data Relational Database Management System
(RDBMS). Hal ini juga diperkuat oleh Mclaughlin(2007, p5), Oracle 10g adalah
suatu database yang diproduksi oleh Oracle Corporation, yang berpusat di Redwood
Shores, California. Oracle Database 10g Express Edition merupakan salah satu dari
produk database, yang dibatasi dengan 4GB (Gigabyte) untuk maksimum hardisknya
dan 1GB untuk RAM (Random Access Memory). Tapi semua fitur yang ada di sana,
bisa ditemukan di seluruh produk Oracle Database 10g.
Sistem database Oracle terdiri dari satu contoh aplikasi yang berhubungan
dengan data storage. Oracle dapat digunakan untuk mengelola informasi secara
terbuka, komprehensif dan terintegrasi. Oracle 10g mempunyai beberapa kelebihan,
yaitu sebagai berikut :
23
- Mendukung penuh RDBMS
Oracle 10g secara penuh mendukung proses penyimpanan objek database ke
dalam tabel.
- Mempunyai fasilitas administrasi database
Administrasi database memudahkan user mengatur database dengan tampilan
Graphical User Interface (GUI) yang memuaskan.
- Mendukung penuh aplikasi internet dan windows.
Oracle 10g menyediakan bahasa yang cocok untuk aplikasi internet dan windows,
sehingga mudah dalam pengaplikasian, dan implementasi.
Oracle 10g juga mempunyai fitur-fitur yang baru dibandingkan
pendahulunya, yaitu sebagai berikut :
- Automatic Storage Management
Automatic storage managementuntuk menyimpan sekumpulan datakelompok
disk.
- Instalasi Komponen Terpisah
Beberapa komponen saat ini tidak diinstal pada media instalasi database Oracle.
- Enkripsi Password Database
Password setiap user yang mencoba remote login ke Oracle Database 10g
Release 1 (10.1) otomatis dienkripsi sebelum diremote.
- Data Pump Import dan Export
Oracle menggunakan fasilitas import dan export yang lebih cepat untuk transfer
file.
Pada saat ini PT.JNE menggunakan Oracle 9i, dimana fitur-fitur yang
dimiliki oleh Oracle 9i sama dengan fitur 10g, namun ada beberapa kelebihan dari
Oracle 10g yang tidak dimiliki oleh 9i, yaitu yang telah disebutkan sebelumnya.
24
2.3.2 Data Definition Language(DDL)
DDL adalah bahasa yang digunakan untuk mendefinisikan data, dan tidak
bisa digunakan untuk memanipulasi data. Hal ini dikemukakan oleh Connolly dan
Begg(2010, p92),yang mengatakan bahwa DDL adalah bahasa query yang
memberikan izin kepada DBA atau useruntuk menjelaskan entitas-entitas, atribut-
atribut dan relasi yang dibutuhkan untuk aplikasi, dan digunakan bersama
constraints. DDL tidak bisa digunakan untuk manipulasi data, DDL digunakan untuk
mendefinisikan schema. Kumpulan dari pernyataan DDL adalah kumpulan dari
tempat penyimpanan table yang merupakan tempat penyimpanan khusus, dan disebut
dengan system catalog.
2.3.3 Data Manipulation Lamguage (DML)
DML adalah bahasa yang memungkinkan untuk memanipulasi data, user
dapat membuat pernyataan yang dapat menyebabkan manipulasi data terjadi. Seperti
yang disampaikan Connolly dan Begg(2010, p93),DML adalah bahasa yang
menyediakan kumpulan operasi-operasi yang mendukung operasi manipulasi data
dasar, yang ada di dalam database. Operasi manipulasi data biasanya melingkupi
beberapa hal, yaitu ;
- Insertion
Operasi ini merupakan proses memasukan data baru ke dalam database, proses
memasukan data bisa disertakan kondisi tertentu,berikut adalah contoh
operasinya :
INSERT INTO Customers VALUES (001, ‘Maya Fitri’, ‘Jl. Kebon Angsa No.99’);
25
SELECT * FROM Customers WHERE ID=001;
- Modification
Operasi ini merupakan operasi untuk melakukan perubahan data yang ada dalam
di database, perubahan data bisa dengan kondisi tertentu, berikut adalah contoh
operasinya :
- Retrieval
Operasi ini merupakan operasi untuk menampilkan data dari dalam database,
data yang ditampilkan bisa keseluruhan, atau hanya dalam kondisi tertentu saja,
berikut adalah contoh operasinya :
- Deletion
Operasi ini merupakan operasi untuk menghapus data atau record di dalam
database, proses menghapus data ini bisa dengan kondisi yang ditentukan,
berikut adalah contoh operasinya :
Bagian dari DML yang melibatkan pengambilan data disebut dengan bahasa
query. Bahasa query dapat didefinisikan sebagai bahasa high level dengan tujuan
khusus untuk memenuhi berbagai macam pengambilan data dari database.
2.3.3.1 Procedural DMLs
Procedural DMLs adalah bahasa yang memberikan izin kepada useruntuk
menjelaskan kepada sistem data apa yang dibutuhkan dan bagaimana mendapatkan
UPDATE Customers SET Salary=Salary*1.03);
DELETE FROM Customers WHERE ID=002;
26
data tersebut.User harus menunjukan semua operasi akses data yang digunakan
untuk menjalankan prosedur untuk mendapatkan informasi yang dibutuhkan.
(Connolly dan Begg, 2010, p93)
2.3.3.2 Nonprocedural DMLs
Menurut Connolly dan Begg(2010, 93), Nonprocedural DMLsadalah bahasa
yang mengizinkan useruntuk menyatakan data apa saja yang dibutuhkan tanpa
menyatakan bagaimana data tersebut harus diambil. DBMS menerjemahkan
pernyataan DML, menjadi satu atau lebih prosedur yang dapat memanipulasi
kumpulan record yang dibutuhkan..
2.4 Relational Model
2.4.1 Relational Data Structure
Menurut Connolly dan Begg(2010, p144), Relational Data Structure terdiri
atas tujuh bagian, yaitu :
- Relation
Relation adalah sebuah tabel dengan baris dan kolom.Relation ditunjukan
padaGambar 2.4.1.1 halaman 27. Relation hanya diaplikasikan pada tingkat
external dan konseptual dari ANSI-SPARCArchitecture, dan tidak bisa di
aplikasikan pada struktur fisikal di database.
- Attribute
Attribute adalah sebuah nama pada kolom dari sebuah relation. Sebuah relasi
direpresentasikan sebagai dua dimensi di tabel. Attribute ditunjukan
padaGambar 2.4.1.1 halaman 27.
27
- Domain
Masing-masing attributebisa mempunyai domain yang tidak sama, namun dua
atau lebih attributes juga bisa mempunyai domain yang sama. Konsep domain
ini sangat penting, dikarenakan mengizinkan user untuk menentukan nilai
attribute.Domain ditunjukan Gambar 2.4.1.1.
Gambar 2.4.1.1Attributes Domain (Connolly dan Begg, 2010, p145)
- Tuple
Tuple adalah sebuah baris dari sebuah relation.Tuple menentukan nilai dari
attribute.Tuple ditunjukan pada Error! Reference source not found.Gambar
2.4.1.1.
- Degree
Degree adalah jumlah attributes yang ada pada relation. Sebuah relasi yang
mempunyai one degree, disebut dengan unary, yang mempunyai dua attributes
disebut dengan binary, yang mempunyai tiga attribute disebut dengan ternary,
kemudian yang mempunyai lebih dari tiga attribute disebut dengan n-ary.
28
Gambar 2.4.1.2Instances of the Branch and Staff relations
(Connolly dan Begg, 2010, p145)
2.4.2 Relational Keys
Menurut Connolly dan Begg(2010, p150), Relational Keys dibagi menjadi
empat jenis key, yaitu :
- Superkey
Superkey adalah sebuah atribut atau sekumpulan atribut yang
mengidentifikasikan tuple dalam sebuah relation.
- Candidate Key
Candidate Key adalah sebuah superkey yang ada didalam relation. Candidate
Key K untuk sebuah relation R mempunyai dua sifat, antara lain :
a. Uniqueness
Pada setiap tuple dari R, nilai dari K mengidentifikasi tuple tersebut. Nilai
key harus berupa nilai yang unik, atau nilai yang tidak sama dengan nilai
yang lainnya.
29
b. Irreducibility
Tidak terdapat bagian yang tepat pada K yang mempunyai sifat yang
unik.Candidate Key mempunyai sifat yang tidak bisa di reduce.
- Primary Key
Primary Key adalah Candidate Key yang dipilih untuk mengidentifikasi tuples
yang unik didalam sebuah relation.Primary key merupakan nilai yang tidak bisa
sama dengan attribut lain,
- Foreign Key
Foreign Key adalah sebuah atribut atau kumpulan dari atribut, didalam satu
relation yang cocok dengan candidate key dari beberapa relation yang mungkin
dengan relation yang juga sama.
2.4.3 Entity Relationship Modelling
ER Modelling adalah sebuah pemodelan entitas yang saling berhubungan. ER
Modelling dibuat untuk melihat secara keseluruhan apa saja entitas yang ada di
dalam perancangan database dan bagaimana hubungan antar entitas tersebut. Hal ini
diperkuat dengan pendapat dari Connolly dan Begg(2010, p371), yang berpendapat
bahwa ER Modelling merupakan pendekatan top-down untuk merancang database
yang dimulai dengan mengidentifikasi data-data penting yang disebut dengan entitas
dan relationship di dalam pemodelan suatu data.
Konsep dari ER modelling digambarkan dengan ER, diagram ini
menampilkan hubungan antar data, dan merepresentasikan objek ke dalam bentuk
fisik.
30
Gambar 2.4.3.1Entity Relationship Diagram
(Connolly dan Begg, 2010, p372)
PadaGambar 2.4.3.1Entity Relationship Diagrammenggambarkan ER-diagram dari
Branch View of Dream Home.
2.4.3.1 Entity Type
Tipe entitas merupakan perwakilan dari sekumpulan objek yang memiliki
properti, behavior yang sama. Setiap designer yang merancang tipe entitas mungkin
saja nama tipe entitas bisa berubah satu sama lain. Hal ini diperkuat oleh Connolly
dan Begg(2010, p372), tipe entitas adalah sekumpulan objek dengan property yang
sama dan keberadaannya diakui oleh perusahaan ada secara independen.
31
Ada 2 jenis tipe entitas :
1. Strong Entity Type, yaitu tipe entitas yang tidak bergantung pada entitas lainnya,
dan mampu berdiri sendiri. Strong Entity dapat dilihat pada Gambar
2.4.3.1.1Strong dan Weak Entityhalaman 31.
2. Weak Entity Type, yaitu tipe entitas yang keberadaannya bergantung pada entitas
lainnya, dan biasanya tidak ada primary key, oleh karena itu memerlukan entitas
lain untuk bisa disebut sebagai entitas. Weak Entity dapat dilihat padaGambar
2.4.3.1.1 halaman 31.
Gambar 2.4.3.1.1Strong dan Weak Entity
(Connolly dan Begg, 2010, p384)
Error! Reference source not found.Gambar 2.4.3.1.1Strong dan Weak Entity,
menunjukan yang menjadi strong entity adalah client, sedangkan yang menjadi weak
entity adalah preference. Client yang menjadi strong entity dikarenakan jika
hubungan states dihapus, maka client tetap dapat menjadi entitas. Sedangkan
preference tidak akan menjadi entitas jika hubungan states nya dihapus. Hal ini
menjadikan preference menjadi weak entity.
32
2.4.3.2 Relationship Types
Di dalam penggambaran ER Modelling, hubungan antar entitas harus
digambarkan. Tipe hubungan yang terjadi antar entitas juga ada banyak jenisnya.
Menurut Connolly dan Begg(2010, p374), relationship type adalah sekumpulan
asosiasi di antara satu atau lebih tipe entitas.
Gambar 2.4.3.2.1Entity Types
(Connolly dan Begg, 2010, p374)
Entity Types, menggambarkan hubungan antara staff dan branch.
a. Jenis Hubungan
Terdapat beberapa jenis hubungan, yaitu :
• Dependency (Ketergantungan)
Dependency adalah hubungan semantic antara dua benda dimana perubahan
pada suatu benda (benda yang bebas) bisa saja mempengaruhi semantik
benda yang lain (benda yang bebas).
Gambar 2.4.3.2.2Dependency
(Connolly dan Begg, 2010, p374)
33
• Association (Asosiasi)
Association adalah hubungan struktural yang menggambarkan sebuah set
dari hubungan, sebuah hubungan yang menjadi penghubung di antara objek.
Gambar 2.4.3.2.3Association
(Connolly dan Begg, 2010, p374)
• Generalization (Generalisasi)
Generalitation adalah sebuah spesialisasi/generalisasi hubungan dimana
objek yang berasal dari elemen yang dikhususkan (specialized elements)
atau sang anak (the child) bisa digantikan untuk objek yang berasal dari
elemen yang disamaratakan (generalized elements) atau sang tetua (the
parents). Dalam hal ini, sang anak (the child) memberikan struktur dan
perilaku dari sang tetua (the parents).
Gambar 2.4.3.2.4Generalisasi
(Connolly dan Begg, 2010, p374)
• Realization (Realisasi)
Realization adalah hubungan semantik antara classifiers, dimana satu
penggolong menetapkan kontrak yang menjamin classifier lain untuk
melaksanakannya.
Gambar 2.4.3.2.5Realisasi
(Connolly dan Begg, 2010, p374)
34
b. Degree of Relationship Type
Menurut Connolly dan Begg(2010, p376), degree of relationship type adalah
jumlah tipe entitas yang berpatisipasi pada hubungan. Terdapat beberapa tipe
degree of relationship type, yaitu sebagai berikut :
- Binary
Sebuah hubungan yang menghubungkan dua entitas.
Gambar 2.4.3.2.6Binary Relationship
(Connolly dan Begg, 2010, p376)
Contoh gambar diatas adalah satu relationship relationship yang
menghubungkan dua entitas, yaitu relationship POwns menghubungkan
PrivateOwner dengan PropertyForRent, yang berarti relationship POwns
private owner owns property for rent.
- Ternary
Sebuah hubungan yang menghubungkan tiga entitas yang saling
berhubungan.
Gambar 2.4.3.2.7Termary Relationship
(Connolly dan Begg, 2010, 377)
35
Contoh gambar diatas menerangkan sebuah hubungan yang
menghubungkan tiga entitas yang berbeda, yaitu Staff, Client dan Branch.
Ketiga entitas itu dihubungkan dengan hubungan yang diberi nama
registers.
- Quaternary
Sebuah entitas yang menghubungkan empat entitas yang saling
berhubungan.
Gambar 2.4.3.2.8Quarternary relationship
(Connolly dan Begg, 2010, p377)
Gambar diatas menjelaskan sebuah hubungan menghubungkan empat entitas
yang saling berhubungan dengan hubungan yang diberi nama arranges.
c. Recursive Relationship
Menurut Connolly dan Begg(2010, p378), recursive relationship adalah tipe
hubungan pada entitas yang sama, dimana memiliki tipe participates lebih dari
satu didalam roles yang berbeda.
36
Gambar 2.4.3.2.9Recursive relationshi
(Connolly dan Begg, 2010, p378)
2.4.3.3 Attributes
Attribute merupakan sifat atau properti yang dimiliki oleh suatu entitas.
Attribute berisi catatan-catatan yang disimpan dalam sebuah entitas. Ini juga
dikemukakan oleh Connolly dan Begg (2010, p379), attribute merupakan sebuah
properti dari sebuah entitas atau tipe hubungannya. Di dalam attribute terdapat
attribute domain yang merupakan kumpulan nilai yang diperbolehkan untuk satu
atau lebih attribute.
Attribute dapat diklasifikasikan sebagai berikut :
a. Simple and Composite Attributes
Menurut Connolly dan Begg(2010, p379), Simple attribute adalah suatu attribute
yang terdiri dari komponen tunggal dengan keberadaan yang independen dan tidak
dapat dibagi lagi ke komponen yang lebih kecil. Sedangkan Composite attribute
adalah suatu attribute yang terdiri dari banyak komponen dimana masing-masing
komponen tersebut memiliki keberadaan yang independen.
b. Single-valued and Multi-valued Attributes
Menurut Connolly dan Begg(2010, p380), Single-valued attribute adalah suatu
attribute yang memiliki nilai tunggal untuk setiap kejadian pada tipe entitas.
37
Sedangkan Multi-valued attribute adalah suatu attribute yang memiliki beberapa
nilai untuk setiap kejadian pada tipe entitas.
c. Derived Attributes
Derived attribute adalah suatu attribute yang menggambarkan nilai yang
didapatkan dari attribute-attribute yang saling berhubungan, tetapi tidak selalu harus
dari tipe entitas yang sama.
d. Keys
Key digunakan di dalam attribute terbagi menjadi beberapa, yaitu :
1. Candidate Key adalah sekumpulan minimal dari attribute yang bersifat unik
yang mengidentifikasikan keberadaan dari setiap tipe entitas. (Connolly dan
Begg, 2010, p381).
2. Primary Key adalah suatu candidate key yang telah dipilih untuk dijadikan
key utama di dalam entitas yang mengidentifikasikan kejadian yang terjadi
pada entitas. (Connolly dan Begg, 2010, p381)
3. Composite Key adalah suatu candidate key yang terdiri dari dua atau lebih
attribute.
2.4.3.4 Structural Constraints
Multiplicity adalah jumlah nilai yang mungkin terjadi pada tipe entitas yang
mungkin berhubungan dengan kejadian tunggal dari tipe entitas yang merupakan
bagian dari relationship(Connolly dan Begg, 2010, p385). Terdapat tiga jenis
relation yang menggunakan integrity constraint, antara lain adalah :
38
- One-to-One (1:1) Relationship
Gambar 2.4.3.4.1One-to-one (1:1)relationships
(Connolly dan Begg, 2010, p386)
Contoh gambar diatas adalah relationship one-to-one. Satu staff hanya memiliki
satu relationship type dan satu branch. Maka dari itu disebut dengan one-to-one
- One-to-Many (1:*) Relationship
Gambar 2.4.3.4.2One-to-many (1:*) relationships
(Connolly dan Begg, 2010, p387)
Contoh gambar diatas adalah one-to-many relationship yang dimana satu staff
bisa memiliki lebih dari satu tipe relationship, namun hanya mempunyai satu
propertyforrent per satu relationship.
39
- Many-to-Many (*:*) Relationship
Gambar 2.4.3.4.3Many-to-many (*:*) relationships
(Connolly dan Begg, 2010, p388)
Contoh gambar diatas adalah many-to-many relationship, yaitu satu newspaper
yang mempunyai bisa lebih dari satu pengiklanandan mempunyai satu property
for rent.
2.4.4 Enhanced Entity-Relationship Modelling
2.4.4.1 Specialization / Generalization
Spesialisasi atau generalisasi adalah menentukan entitas yang menjadi
supperclass dan subclass, kemudian menentukan relationship nya, dan tipe dari dua
tipe utama dari constraintsyaituparticipation dan disjoint.Hal ini juga dikemukakan
oleh Connolly dan Begg(2010, pp400-411), konsep dari specialisasi atau generalisasi
adalah berhubungan dengan tipe khusus dari entitas-entitas yang dikenal dengan
superclasses dan subclasses, dan proses attribute inheritance.,terdapat beberapa
bagian yang membentuk specialisasi dan generalisasi.
40
2.4.4.2 Superclasses and Subclasses
Superclass adalah tipe entitas dimana melingkupi satu atau lebih dari distinct
subgroupings, yang ditampilkan kedalam model data. Sedangkan subclass adalah
distinct subgrouping yang ada didalam tipe entitas, yang harus ditampilkan dalam
bentuk model data.
2.4.4.3 Superclass / Subclass Relationship
Hubungan yang melibatkan antara superclass dan subclass,sertahubungan
yang terjadi antara superclass dan subclass adalah one-to-one (1:1) disebut dengan
superclass/subclass relationship.
2.4.4.4 Attribute Inherintance
Sebuah entitas di subclass memperlihatkan objek yang sama dengan yang ada
pada superclass, begitu pula dengan atribut. Atribut yang ada di subclass juga
terdapat pada superclass, dan mungkin saja terdapat atribut tambahan yang muncul
pada superclass.
2.4.4.5 Specialization Process
Spesialisasi adalah proses memaksimalkan perbedaan yang ada diantara
entitas-entitas dengan mengidentifikasi perbedaan karakteristiknya
2.4.4.6 Generalization Process
Proses generalisasi adalah proses meminimalkan perbedaan antara entitas-
entitas dengan mengidentifikasi karakteristik umum nya. Proses generalisasi
41
merupakan pendekatan bottom-up, yang hasilnya akan diidentifikasi sebuah
superclass dari entitas-entityas lannya.
2.5 Integrity Constraints
2.5.1 Nulls
Nulls digunakan untuk menunjukan bahwa nilai suatu field adalah bernilai
boleh kosong, atau yang dimaksud adalah nilai yang boleh tidak ada. Tetapi null
tidak sama dengan nilai nol secara numerik atau sebuah teks yang hanya berupa
spasi, dikarenakan nilai nol secara numerik dan spasi secara string termasuk sebagai
nilai atau values. Hal ini juga dikemukakan olehConnolly dan Begg(2010, p153),
nulls merepresentasikan sebuah nilai untuk sebuah atribut yang tidak diketahui atau
yang tidak cocok dengan tuple. Nulls dapat digunakan untuk menyebut nilai logikal
yang tidak diketahui.
2.5.2 Entity Integrity
Primary key adalah minimal identifier yang digunakan untuk
mengidentifikasi tuples yang unik. Jika beberapa bagian dari primary key
diperbolehkan untuk null, jadi tidak smeua atribut dibutuhkan untuk membedakan
antara tuples dengan definisi primary key. Hal ini disampaikan oleh Connolly dan
Begg(2010, p153), entity integrity adalah relation dasar, yang tidak mempunyai
atribut dari primary key yang bisa null.
2.5.3 General Constraints
General constraints adalah sebuah batasan atau rules yang digunakan untuk
databaseyang didefinisikan. Menurut Connolly dan Begg(2010, p155), general
42
constraints adalah rules tambahan yang dispesifikasi oleh useratau DBA dari sebuah
database yang di definisikan.
2.6 Views
Views merupakan tabel virtual yang isinya dapat disesuaikan dengan
kebutuhan masing-masing user, views juga dibuat untuk alasan keamanan, agar
beberapa tabel perusahaan yang pennting tidak bisa di akses oleh akses lain. Hal ini
juga diperkuat oleh pernyataan dariConnolly dan Begg(2010, p155), yang
menyatakan bahwa views adalah tabel virtual atau turunan table atau relation, yang
tidak dibutuhkan untuk ada dalam database, tetapi dapat dibuat sesuai dengan
permintaan oleh sebagian userdisaat usermelakukan permintaan.
Views diperlukan untuk berbagai macam alasan, yaitu sebagai berikut :
- Views menyediakan mekanisme security yang powerfull dan fleksibel
dengan menyembunyikan bagian-bagian databasedari certain user. Usertidak
akan menyadari adanya atribut atau tuple yang tidak ada dari view.
- Views mengizinkan useruntuk memberikan akses data dengan mangatur
data apa saja yang diperlukan, sehingga data yang sama dapat dilihat oleh
useryang berbeda dengan berbagai macam cara.
- Views dapat menyederhanakan operasi yang komplek pada relation dasar.
Dikarenaakan jika ingin menampilkan beberapa record dari tabel yang berbeda-
beda, akan menghasilkanb operasi yang sangat kompleks.
2.7 Process Modelling
Dalam mendokumentasikan kebutuhan dari sistem secara terstruktur, process
modelling kerap digunakan untuk mengelola dan mendokumentasikan proses sistem.
43
Menurut Satzinger, Jackson, & Burd (2010, p. 151), dalam mendokumentasikan
workflow, atau urutan langkah-langkah untuk menangani sebuah transaksi bisnis,
terdapat beberapa pilihan tools. Data flow diagram (DFD) merupakan salah satu tool
yang paling sering digunakan untuk menangkap aliran data dalam suatu worklfow.
Data flow diagram (DFD) merupakan model proses yang digunakan untuk
menggambarkan aliran data input dan output pada sebuah sistem beserta tugas atau
pengolahan yang dilakukan oleh sistem dari segi proses dan data store (Satzinger,
Jackson, & Burd, 2010, p. 206). Sistem yang dibahas dapat berupa sistem dalam
banyak konteks seperti sistem pendidikan, sistem komputer, sistem bisnis, ataupun
sistem informasi.
Simbol-simbol yang dipakai oleh data flow diagram terdiri dari 5 notasi
seperti yang digambarkan pada Gambar 2.7.2.1.
44
Gambar 2.7.2.1Data flow diagram symbols
(Sumber: Satzinger, Jackson, & Burd, 2010, p. 207)
Data flow diagram dapat dikembangkan dalam kerincian yang bervariasi,
sesuai system requirement yang perlu digambarkan. Abstraksi ini dapat dilakukan
secara hierarkis dari yang umum sampai ke level yang lebih detail. Level Abstraksi
Data Flow Diagram dibagi menjadi dua, yaitu :
1. Diagram Konteks
Diagram konteks merupakan deskripsi paling abstrak mengenai sistem dan biasa
digunakan untuk mendokumentasikan lingkup awal proyek. Diagram ini fokus
terhadap interaksi dengan lingkungan sekitar sistem dan menampilkan semua
external agent dan data flow ke dalam dan dari sistem semua dalam satu diagram,
dengan seluruh sistem sebagai satu proses. (Satzinger, Jackson, & Burd, 2010, p.
208)
45
Gambar 2.7.2.2 Contoh DFD Konteks
(Sumber: Satzinger, Jackson, & Burd, 2010, p. 209)
2. Fragmen DFD
Fragmen DFD, atau diagram event, dibangun untuk setiap usecase yang
ditemukan pada event table. Dengan demikian, setiap fragmen DFD menggambarkan
bagaimana sistem menanggapi event tertentu. DFD fragment biasanya digambarkan
setelah diagram konteks dan event table selesai dibangun (Satzinger, Jackson, &
Burd, 2010, p. 210).
Academic
department
Student
1
Schedule course
2
Enroll student
Offered course .Schedule
data
Enrollment
request
Schedule
Student .
Offered course
Course enrollment
Gambar 2.7.2. 3 Contoh fragment DFD
(Satzinger, Jackson, & Burd, 2010, p. 210)
2.8 Normalisasi
Normalisasi merupakan hal penting dalam perancangan database. Hal
tersebut dikarenakan normalisasi dapat membuat record table menjadi normal
sehingga mencegah timbulnya redundansi data, ini juga diperkuat oleh pernyataan
46
Connolly dan Begg(2010, p428), normalisasi adalah suatu teknik menghasilkan
sekumpulan relasi dengan properti yang diinginkan untuk menyajikan kebutuhan
data perusahaan.
Tujuan dari normalisasi adalah untuk menghilangkan kerangkapan data atau
data yang sama. Hal tersebut ditujukan untuk mengurangi kompleksitas dan untuk
memodifikasi suatu data, serta untuk mengidentifikasikan kumpulan relasi yang
cocok untuk mendukung kebutuhan data perusahaan.
Menurut Connolly dan Begg(2010, p428), ada beberapa hal yang perlu
diperhatikan di dalam proses normalisasi antara lain :
- Normalisasi merupakan suatu teknik formal, sehinggauntuk menganalisis suatu
relasi harus berdasarkan primary key dan ketergantungan fungsional antar
attribute.
- Normalisasi mengeksekusi beberapa langkah, dimana setiap langkah mengacu
pada bentuk normal tertentu sesuai dengan sifat yang dimiliki.
- Setelah proses normalisasi dilakukan, relasi secara bertahap menjadi lebih
terbatas dan juga lebih mengurangi suatu tindakan update yang bersifat anomali.
Terdapat beberapa tahap proses normalisasi, yaitu sebagai berikut :
47
Gambar 2.8.1 Proses Normalisasi (Connolly dan Begg, 2010, p388)
2.8.1 Unnormalized Form (UNF)
Unnormalized Form (UNF) adalah tabel yang berisi satu atau lebih data yang
berulang. Dari bentuk inilah yang merupakan awal proses normalisasi.
Gambar 2.8.1.1Unnormalized Table
(Connolly dan Begg, 2005, p404)
2.8.2 First Normal Form (1NF)
Sebelum melakukan proses 1NF, bentuk tabel adalah dalam keadaan
Unnormalized Form. 1NF adalah suatu relasi dimana intersection dari setiap baris
48
dan kolom mengandung hanya satu nilai. Pada proses normalisasi 1NF, data yang
berulang akan dihilangkan.
Gambar 2.8.2.1First Normal Form (Connolly dan Begg, 2005, p405)
2.8.3 Second Normal Form (2NF)
Pada proses normalisasi 2NF, dilakukan dekomposisi atau pemisahan sesuai
dengan sifat ketergantungan fungsional dimana setiap attributenon-primary key
secara fungsional bergantung sepenuhnya pada primary key.
Gambar 2.8.3.1Second Normal Form
(Connolly dan Begg, 2005, p408)
49
2.8.4 Third Normal Form (3NF)
Proses normalisasi 3NF merupakan sebuah relasi yang ada pada 1NF dan
2NF, dimana attribute yang bukan non-primary key bergantung secara transitif
kepada primary key.
Gambar 2.8.4.1Third Normal Form (Connolly dan Begg, 2005, p408)
2.9 Fact-Finding Technique
Fact-Finding Technique merupakan teknik pencarian fakta yang dapat
digunakan dalam mencari fakta di dalam sebuah permasalahan di lapangan.Hal ini
diperkuat oleh Connolly dan Begg(2010, p317), fact-finding technique dibutuhkan di
dalam mengumpulkan dan menganalisis informasi.
Beberapa teknik yang biasa digunakan dalam fact-finding :
1. Examining Document
Dalam proses ini, analis mencari informasi mengenai seberapa penting
kebutuhan database di dalam perusahaan atau organisasi. Pada teknik ini dibutuhkan
dokumentasi sistem yang ada, surat-surat dalam proses bisnis, serta bentuk laporan
yang digunakan.
2. Interviewing
Wawancara merupakan teknik yang paling umum dan biasanya paling berguna
dalam pencarian fakta. Dalam melakukan wawancara, dibutuhkan kemampuan
50
komunikasi yang baik agar hasil dari pertanyaan yang diberikan kepada responden
dapat diterima dengan jelas dan dapat dijawab dengan baik dan tepat sasaran. Dalam
melakukan wawancara, tingkat kebenaran dan ketepatan informasi yang didapatkan
dapat diketahui dengan melihat bahasa tubuh dari responden.
3. Observing the Enterprise in Operation
Dengan teknik observasi, pencarian fakta dapat dilakukan dengan mengamati
dan berbaur dengan para pelaku bisnis serta mengikuti proses bisnis yang berjalan
pada perusahaan tersebut. Teknik observasi adalah salah satu teknik pencarian fakta
yang paling efektif untuk pemahaman suatu sistem. Dengan observasi, pengalaman
yang didapatkan di lapangan akan lebih berbeda dengan yang diinformasikan oleh
responden sehingga proses bisnis dan masalah yang ada akan lebih mudah
dimengerti.
51
4. Research
Penelitian dilakukan dengan mencari informasi dalam buku referensi ataupun
jurnal. Dari sumber tersebut mungkin dapat ditemukan bagaimana suatu masalah
yang sama dapat diselesaikan, dan bisa juga dijadikan sebagai referensi dalam
analisis dan perancangan yang akan dilakukan.
5. Questionnaires
Kuesioner adalah teknik pencarian fakta dengan melakukan survei melalui daftar
pertanyaan. Teknik ini biasanya digunakan untuk mengumpulkan fakta dari
responden yang jumlahnya banyak. Dengan menggunakan teknik kuesioner, akan
lebih menghemat waktu dan uang dibandingkan jika harus mewawancara responden
yang banyak satu per satu.
2.10 Metodologi Perancangan Database
Menurut Connolly dan Begg(2010, p314), terdapat tahapan perancangan
database, database merupakan komponen dasar suatu sistem informasi, dimana
dapat dilihat berdasarkan kebutuhan organisasi. Untuk membentuk sebuah database,
terdapat tahapan sebagai berikut :
52
Gambar 2.10.1 Diagram siklus database
(Connolly dan Begg, 2010, p314)
2.10.1 Database Planning
Perencanaan databasemencakup bagaimana data dikumpulkan, bagaimana
format yang harus dispesifikasikan, dokumen apa saja yang akan dibutuhkan,
bagaimana desain dan proses implementasi seharusnya. Hal ini dikemukakan oleh
Connolly dan Begg(2010, p313),perencanaan database atau dataase planning adalah
tahap pertama yang merencanakan bagaimana database system development lifecycle
akan menjadi lebih efektif dan efisien. Perencanaan database harus terintegrasi
53
dengan semua strategi sistem informasi pada organisasi. Tahap pertama yang penting
dalam perencanaan database adalah menentukanmission statement pada sistem
database, dengan adanya mission statement ini akan membantu untuk
mengklarifikasi tujuan dari sistem database dan menciptakan jalur yang lebih efektif
dan efisien. Setelah mission statement ditentukan, tahapan selanjutnya adalah
menentukan mission objectives. Setiap mission objective mengidentifikasi bagian
tugas yang didukung oleh sistem database.
2.10.2 System Definition
System definition adalah Menurut Connolly dan Begg(2010, p316), definisi
sistem atau system definition merupakan batasan dan ruang lingkup dari sistem
database, dan sudut pandang user yang utama. Sudut pandang user atau user view
menentukan apa yang dibutuhkan oleh sistem database dari sudut pandang a
particular job role (manager atau supervisor) atau enterprise application area
(marketing, personnel atau stock control). Sistem database mempunyai satu atau
lebih sudut pandang user, mengidentifikasi sudut pandang user adalah aspek yang
penting untuk mengembangkan sistem database, dikarenakan tidak ada satupun
sudut pandang user utama akan terlupa saat mengembangkan kebutuhan untuk
sistem database yang baru.
2.10.3 Requirement Collection and Analysis
Analisis dan pengumpulan kebutuhan atau requirement collection and
analysis adalah proses mengumpulkan dan menganalisa informasi tentang bagian
dari organisasi yang didukung oleh sistem database, dan menggunakan informasi ini
54
untuk mengidentifikasi kebutuhan untuk sistem baru. (Connolly dan Begg, 2010,
p316).
Menurut Connolly dan Begg(2010, p318), ada tiga pendekatan untuk
mengatur kebutuhan dari sistem database berdasarkan multiple user views, yaitu :
1. Centralized Approach
Setiap kebutuhan dari setiap user akan digabungkan menjadi satu kumpulan
kebutuhan untuk sistem database yang baru. Kumpulan dari kebutuhan tersebut
akan diberikan nama yang menyediakan beberapa indikasi dari area aplikasi
yang dicakup oleh gabungan dari user views.
2. View Integration Approach
Kebutuhan dari setiap user view di pisahkan menjadi daftar yang terpisah,
sehingga data model akan merepresentasikan user view yang diciptakan,
kemudian akan digabungkan setelah tahap desain database.
3. A Combination of both Approaches
Pendekatan ini menggabungkan dua pendekatan sebelumnya, ini digunakan
dalam kondisi tertentu. Jika dua atau lebih user views akan digabungkan dahulu
menggunakan centralized approach, kemudian digunakan untuk membangun
logikal data model lokal. Model data yang telah digabungkan saat pertama kali,
dapat digabungkan lagi dengan logikal data model lokal lainnya. Sehingga tahap
ini disebut dengan view integration approach.
2.10.4 Database Design
Database design adalah perancangan basis data untuk memenuhi kebutuhan
sistem databasedan mendukung proses bisnis, hal ini diperkuat olehConnolly dan
Begg(2010, p320), yang menyampaikan bahwa database design adalah proses
55
menciptakan sebuah rancangan yang akan mendukung mission statement dan mission
objectives untuk memenuhi kebutuhan sistem database.Menurut jurnal yang
dikemukakan oleh Irwin(2012, pp19-27), dengan judul “A Database Design dan
Implementation Case” mengatakan bahwa desain database terbagi menjadi beberapa
tahap, yaitu :
- Membuat conceptual data model untuk sistem informasi.
- Menerjemahkan conceptual model menjadi desain database logikal.
- Mengimplementasikan database menggunakan sistem management database.
- Melakukan test integritas data control pada database.
Terdapat beberapa pendekatan yang digunakan untuk merancangdatabase,
yaitu :
- Top-down
Top-down merupakan pendekatan yang dimulai dengan ide utama yang
dibutuhkan sistem, kemudian menanyakan kepada end-userdata apa yang
dibutuhkan untuk disimpan. Pendekatan ini dilakukan dengan cara menggunakan
entity-relationship (ER) sebagai model kemudian mengidentifikasi entitas dan
hubungan.
- Bottom-up
Bottom up menganalisa dan mengelompokan attribute didalam suatu relasi yang
menggambarkan tipe entitas dan relasi antar entitas.
Di Tahap desain database ini terdapat tiga tahapan untuk desain database,
yaitu sebagai berikut :
1. Conceptual Database Design
Conceptual database design adalah merupakan tahap pertama dalam database
design dan mengidentifikasi berdasarkan kebutuhan dari user. hal ini dikemukakan
56
oleh Connolly dan Begg(2010, p322), conceptual database design adalah proses
untuk membangun sebuah model data yang digunakan didalam enterprise.
Menurut Connolly dan Begg(2010, p471), pada tahap perancangan konseptual
terdapat langkah-langkah sebagai berikut
• Identifikasi tipe entitas
• Identifikasi tipe hubungan
• Identifikasi attributes dengan tipe entitas atau hubungan
• Menentukan domain attribute
• Menentukan candidate,orimary dan alternate key
• Mengecek pengulangan model
• Validasi data model konseptual dengan transaksi user.
• Review data model konseptual dengan user
2. Logical Database Design
Logical database design merupakan tahap kedua dalam database design, tahap
ini merupakan pengembangan dari tahap conceptual database design, dimana teknik
normalisasi digunakan untuk menilai kebenaran dari Logical Database Design.Hal
ini juga dikemukakan Connolly dan Begg(2010, p323), logical database design
adalah proses pembangunan model data yang digunakan di enterprise dan
berdasarkan spesifikasi model data, tetapi tidak bergantung pada bagian dari DBMS.
Menurut Connolly dan Begg(2010, p490), terdapat beberapa tahap pada logikal
data model, yaitu sebagai berikut :
• Derive hubungan pada logikal data model
• Validasi hubungan menggunakan normalisasi
• Validasi hubungan terhadap resiko transaksi user
• Mengecek batasan integritas
57
• Review logikal data model dengan user
• Menggabungkan logikal data model kedalam data model global.
• Mengecek future growth
3. Physical Database Design
Physical database design merupakan tahap ketiga dan juga merupakan tahap
akhir dari proses database design,designer memutuskan bagaimana
databasediimplementasikan. Seperti yang dikemukakan oleh Connolly dan
Begg(2010, p324),Desain databasePhysical adalah proses untuk memproduksi
deskripsi dari proses implementasi database di penyimpanan yang kedua. Hal
tersebut akan menjelaskan tentang hubungan dasar, file organisasi, dan index yang
digunakan untuk menciptakan akses yang efisien ke data, dan batasan integritas.
Menurut Connolly dan Begg(2010, p524),fisikal desain database juga dibagi
menjadi tiga tahap, yaitu sebagai berikut :
• Merancang hubungan dasar
• Desain representasi dari data turunan
• Desain batasan umum
• Desain file organization dan index
o Menganalisa transaksi
o Memilih file organization
o Memilih index
o Mengestimasi kebutuhan kapasitas disk
• Desain user views
• Desain security mechanisms
58
2.10.5 DBMS Selection
DBMS selection adalah proses pemilihan dari DBMS untuk mendukung
sistem database. Langkah-langkah utama untuk memilih DBMS, yaitu sebagai
berikut :
1. Menentukan waktu untuk melakukan studi referensi
2. Membuat daftar dua atau tiga produk
3. Mengevaluasi produk
4. Merekomendasikan pilihan dan membuat laporan
2.10.6 Application Design
Menurut Connolly dan Begg(2010, p329), desain aplikasi atau application
design adalah desain dari userinterface dan program aplikasi yang digunakan dalam
proses database.Terdapat dua aspek pada desain aplikasi, yaitu desain transaksi dan
desain userinterface.
1. Transaction Design
Desain Transaksi atau transaction design adalah aktivitas atau kumpulan
aktivitas, yang dilakukan oleh satu user atau program aplikasi, yang dapat
mengubah isi dari database.
2. User Interface Design
User interface design adalah proses merancang user interface, untuk
mengimplementasikan sebuah form atau laporan. Proses ini berisi aturan-aturan,
yaitu sebagai berikut :
a. Nama yang bermakna
b. Petunjuk yang mudah dipahami
c. Mengelompokan fields
59
d. Tampilan form atau laporan yang menarik
e. Penggunaan label yangfamiliar
f. Konsisten dalam penggunaan istilah dan singkatan
g. Konsisten dalam penggunaan warna
h. Menyediakan spasi atau barasan untuk data entry
i. Menggerakan mouse untuk menjalankan fungsi
j. Memberikan pesan kesalahan jika ada kesalahan dalam
memasukan data
k. Memberikan pesan kesalahan jika nilai tidak diterima
l. Memberikan field optional
m. Memberikan sinyal atau indicator jika suatu proses telah
selesai.
2.10.7 Prototyping
Prototipe adalah sebuah model kerja yang tidak memiliki fitur yang
diperlukan oleh semua sistem akhir, oleh karena itu prototipe membangun model
kerja dari suatu sistem aplikasi data. Hal ini yang disampaikan oleh Connolly dan
Begg(2010, p333), prototipe adalah membangun model kerja dari sistem database
Tujuan utama dari prototipe adalah memungkinkan user menggunakan prototype
untuk mengidentifikasi fitur dari sistem.
2.10.8 Implementation
Implementasi adalah realisasi fisik dari desain database dan aplikasi,
implementasi database ini akan dicapai dengan menggunakan Data Definition
Language (DDL) dari DBMS atau GUI yang terpilih. (Connolly dan Begg, 2010,
60
p334). Program aplikasi yang diimplementasikan menggunakan third language atau
fourth language. Bagian dari program aplikasi adalah transaksi database, yang
diimplementasikan menggunakan DML. Proses implementasi juga dapat dilakukan
untuk mengimplementasikan komponen dari desain aplikasi seperti menu screen,
data entry forms, dan reports.
2.10.9 Data Conversion and Loading
Data Conversion and Loading adalah proses pemindahan data yang ada ke
dalam database yang baru, dan mengubah aplikasi yang berjalan untuk beroperasi di
database yang baru. Tahap ini dibutuhkan hanya jika sebuah sistem databasebaru
menggantikan sistem lama, sehingga data yang berada pada sistem lama, akan berada
di sistem baru secara otomatis.
2.10.10 Testing
Testing adalah proses menjalankan sistem database dengan tujuan untuk
mencari kesalahan. Sehingga diharapkan akan menghasilkan program dan database
yang akan siap digunakan jika kesalahan yang terjadi sudah minim.Testing
diperlukan untuk melihat, apakah sistem databasetersebut sudah dapat digunakan.
2.10.11 Operational Maintenance
Operational Maintenance adalah proses mengendalikan dan menjaga sistem
database selama proses instalasi. Yang melibatkan kegiatan sebagai berikut :
1. Mengendalikan dan mengawasi kinerja dari sistem.
2. Meningkatkan dan memelihara sistem database
61
2.11 Sistem Informasi pengiriman barang
2.11.1 Pengertian sistem informasi pengiriman barang
Telah dikemukakan, kesimpulan mengenai sistem informasi di awal bab,
sedangkan pengiriman barang adalah segala upaya yang diselenggarakan secara
sendiri atau bersama-sama dalam suatu organisasi untuk memberikan pelayanan jasa
berupa pengiriman barang.
Jadi dapat disimpulkan bahwa sistem informasi pengiriman barang adalah
sistem nformasi yang membantu untuk mengumpulkan informasi dalam memberikan
jasa pengiriman barang kepada pelanggan, sehingga organisasi dapat mencatat
berbagai kegiatan pengiriman barang yang dilakukan dengan detail untuk membuat
laporan pengiriman barang.
2.11.2 Teori pengiriman barang
Menurut McLeod (2007, p152) terdapat beberapa pengertian mengenai
pengiriman barang, yaitu sebagai berikut :
a. Shipping adalah pelanggan retail atau korporat yang memanfaatkan jasa layanan
pengiriman barang
b. Consignee adalah penerima barang dari shipper melalui penyedia jasa layanan
pengiriman barang.
c. Agent adalah pihak penyedia jasa layanan pengiriman barang yang bertanggung
jawab atas pengiriman barang setelah barang berangkat dari bandara atau
pelabuhan untuk selanjutnya dikirimkan kepada consignee.
d. Shipping / shipment adalah kegiatan pengiriman barang yang melibatkan
shipper, penyedia jasa, consignee, dan armada pengangkutan mitra bisnis jasa
pengiriman barang.
62
e. Shipping Instruction (SI) adalah surat perintah pengiriman barang yang
diberikan oleh shipper kepada pihak penyedia jasa pengiriman barang.
f. Notify party adalah pihak yang bertanggung jawab atas penerimaan barang.
g. Airway billadalah surat tanda bukti pengiriman barang dengan tanda nomor
tertentu yang telah disetujui oleh pihak penyedia jasa pengiriman barang dan
armada pengakngkutan udara mitra bisnisnya.
h. Tracking adalah kegiatan menampilkan informasi barang shipper melalui suatu
media tertentu. Tujuannya adalah memberikan status informasi pengiriman
barang yang dibutuhkan oleh shipper mengenai barang kirimannya. Kegiatan
tracking ini dilakukan oleh shippert, bukan oleh pihak penyedia jasa pengiriman
barang. Pihak penyedia jasa hanya menyediakan status informasi pengiriman
yang dibutuhkan oleh para shipper.
i. Invoiceadalah surat tagihan jasa pengiriman barang yang dikeluarkan oleh pihak
penyedia jasa pengiriman barang yang dikeluarkan oleh pihak penyedia jasa
pengiriman barang kepada shipper.