BAB 2 TINJAUAN PUSTAKA
2.1
Teori yang Berkaitan dengan Basis Data Teori-teori yang berkaitan dengan basis data yang dibahas adalah data, basis
data (database), sistem basis data, Database Management System (DBMS), EntityRelationship Modeling (ER Modeling), normalisasi, siklus hidup pengembangan basis data, metodologi perancangan basis data, dan Structured Query Language (SQL).
2.1.1 Data Menurut Williams dan Sawyer (2007:25), data adalah fakta dan gambaran mentah yang akan diproses menjadi informasi. Data akan diperlukan untuk membuat sebuah informasi yang berguna. Menurut Indrajani (2011:2), data adalah fakta atau observasi mentah yang disimpan dalam bentuk angka, huruf, simbol, teks, gambar, bunyi, dan sebagainya.
2.1.2 Basis Data (Database) Menurut Connolly dan Begg (2010:65), basis data adalah kumpulan data yang saling berhubungan secara logis yang dirancang untuk memenuhi kebutuhan informasi yang diperlukan oleh suatu organisasi.
2.1.3 Sistem Basis Data Menurut Connolly dan Begg (2010:54), sistem basis data adalah kumpulan dari program aplikasi yang berinteraksi dengan Database Management System (DBMS) dan basis data itu sendiri.
2.1.4 Database Management System (DBMS) Menurut Connolly dan Begg (2010:66), Database Management System (DBMS) adalah sistem perangkat lunak yang memungkinkan pengguna untuk mendefinisikan, membuat, memelihara, dan mengontrol pengaksesan terhadap suatu basis data.
5
6 2.1.4.1 Komponen DBMS Menurut Connolly dan Begg (2010:68-71), DBMS memiliki lima komponen utama, yaitu: 1) Perangkat keras (hardware) DBMS
memerlukan
perangkat
keras
untuk
menjalankan
aplikasinya, seperti Personal Computer (PC), mainframe tunggal, atau jaringan komputer. 2) Perangkat lunak (software) Komponen perangkat lunak meliputi perangkat lunak DBMS itu sendiri, program aplikasi dan sistem operasi, serta perangkat lunak jaringan jika DBMS digunakan di dalam sebuah jaringan. 3) Data Data merupakan komponen yang terpenting dalam lingkungan DBMS, karena data merupakan penghubung antara komponen mesin (perangkat keras dan perangkat lunak) dengan komponen manusia (prosedur dan manusia). 4) Prosedur Prosedur merupakan instruksi dan aturan yang digunakan dalam perancangan dan penggunaan basis data. 5) Manusia Komponen terakhir adalah manusia yang terlibat langsung dengan DBMS.
Manusia
tersebut
dapat
berperan
sebagai
Data
Administrator (DA), Database Administrator (DBA), database designer, application developer, dan end-user. Hubungan
kelima
komponen
utama
dalam
digambarkan dalam Gambar 2.1.
Gambar 2.1 Komponen Utama DBMS (Sumber: Connolly dan Begg, 2010:68)
DBMS
7 2.1.4.2 Fasilitas DBMS Menurut Connolly dan Begg (2010:66), beberapa fasilitas yang disediakan dalam Database Management System (DBMS) adalah sebagai berikut: 1) Data Definition Language (DDL), memungkinkan pengguna untuk mendefinisikan tipe, struktur, dan batasan pada data yang disimpan dalam basis data. Perintah utama yang terdapat dalam DDL adalah sebagai berikut: a) CREATE, digunakan untuk membuat objek dalam basis data. b) ALTER, digunakan untuk melakukan perubahan terhadap objek
dalam
basis data,
seperti
penambahan
dan
penghapusan kolom atau batasan dalam tabel. c) DROP, digunakan untuk menghapus objek dalam basis data. Perintah DROP dapat dibedakan menjadi dua tipe, yaitu RESTRICT dan CASCADE. Perintah DROP akan ditolak jika terdapat objek lain yang bergantung pada objek
yang akan dihapus jika menggunakan
tipe
RESTRICT, sedangkan perintah DROP akan dilakukan dan secara otomatis akan menghapus objek lain yang bergantung
pada
objek
yang
akan
dihapus
jika
menggunakan tipe CASCADE. 2) Data Manipulation Language (DML), memungkinkan pengguna untuk memasukkan, mengubah, menghapus, dan menampilkan data dari dalam basis data. Perintah utama yang terdapat dalam DML adalah sebagai berikut: a) SELECT, digunakan untuk mengambil dan menampilkan data yang berasal dari satu atau lebih tabel pada basis data. b) INSERT, digunakan untuk memasukkan data ke dalam basis data. c) UPDATE, digunakan untuk melakukan perubahan pada data dalam basis data. d) DELETE, digunakan untuk menghapus data dalam basis data.
8 3) Access Control, menyediakan akses yang terkontrol terhadap basis data, seperti: a) Security system, mencegah pengguna yang tidak memiliki hak akses untuk mengakses basis data. b) Integrity system, memelihara konsistensi terhadap data yang telah tersimpan dalam basis data. c) Concurrency control system, memungkinkan dilakukannya akses bersama terhadap basis data. d) Recovery control system, mengembalikan basis data ke kondisi semula pada saat terjadi kegagalan pada perangkat keras atau perangkat lunak. e) User-accessible catalog, berisi deskripsi dari data dalam basis data.
2.1.4.3 Fungsi DBMS Menurut Connolly dan Begg (2010:99-104), beberapa fungsi dari DBMS adalah sebagai berikut: 1) Data storage, retrieval, and update DBMS harus menyediakan kemampuan bagi pengguna untuk menyimpan, mengambil, dan mengubah data dalam basis data. 2) A user-accessible catalog DBMS harus menyediakan sebuah katalog yang dapat diakses oleh pengguna yang mendeskripsikan lokasi penyimpanan data dalam basis data. 3) Transaction support DBMS harus menyediakan sebuah mekanisme yang memastikan bahwa semua perubahan pada data yang berhubungan dengan transaksi dapat diproses dengan baik. 4) Concurrency control service DBMS harus menyediakan sebuah mekanisme yang memastikan bahwa basis data akan terubah dengan benar ketika ada beberapa pengguna yang mengubah data secara bersamaan.
9 5) Recovery service DBMS harus menyediakan sebuah mekanisme untuk memperbaiki basis data ke kondisi semula apabila terjadi kerusakan atau error pada basis data. 6) Authorization service DBMS harus menyediakan sebuah mekanisme yang memastikan bahwa hanya pengguna yang memiliki hak akses atau otoritas yang dapat mengakses basis data. 7) Support for data communication DBMS harus mampu berintegrasi dengan semua communication software. 8) Integrity service DBMS harus menyediakan sebuah mekanisme yang memastikan bahwa data dalam basis data dan perubahan yang akan dilakukan terhadap data telah mengikuti aturan-aturan integritas yang ada. 9) Service to promote data independence DBMS harus mempunyai fasilitas yang mendukung kemandirian program dari struktur aktual basis data. 10) Utility service DBMS harus menyediakan perangkat bantuan atau utilitas yang dapat digunakan oleh Database Administrator (DBA) agar basis data dapat dikelola secara efektif.
2.1.4.4 Kelebihan dan Kekurangan DBMS Menurut Connolly dan Begg (2010:77-80), kelebihan DBMS adalah sebagai berikut: 1) Pengendalian terhadap redundansi data 2) Konsistensi data 3) Mendapatkan informasi yang lebih banyak dari data yang sama 4) Data dapat digunakan bersama 5) Meningkatkan integritas data 6) Meningkatkan keamanan data 7) Pelaksanaan standarisasi 8) Berskala ekonomis
10 9) Penyelarasan kebutuhan yang saling bertentangan 10) Meningkatkan kemampuan akses dan tingkat respons terhadap data 11) Meningkatkan produktivitas 12) Meningkatkan pemeliharaan terhadap data 13) Meningkatkan concurrency 14) Meningkatkan layanan recovery dan backup Menurut Connolly dan Begg (2010:80-81), kekurangan DBMS adalah sebagai berikut: 1) Kompleksitas yang tinggi 2) Biaya DBMS yang mahal 3) Memerlukan ruang penyimpanan yang besar 4) Memerlukan biaya tambahan untuk perangkat keras 5) Memerlukan biaya konversi dari sistem lama ke sistem baru 6) Performa yang kurang stabil 7) Dampak yang lebih tinggi terhadap kegagalan
2.1.5 Entity-Relationship Modeling (ER Modeling) Menurut Connolly dan Begg (2010:371), ER Modeling (EntityRelationship Modeling) adalah pendekatan secara top-down yang dapat digunakan
dalam
perancangan
basis
data,
yang
dimulai
dengan
mengidentifikasikan data yang penting yang disebut dengan entitas, dan relasi atau hubungan antar data harus direpresentasikan dalam sebuah model. Terdapat lima komponen dalam ER Modeling, yaitu tipe entitas, tipe relasi, atribut, key, dan structural constraint.
2.1.5.1 Tipe Entitas Menurut Connolly dan Begg (2010:372), tipe entitas adalah sekumpulan objek dengan sifat yang sama, yang diidentifikasikan oleh perusahaan dan mempunyai keberadaan yang independen. Pengidentifikasian objek yang unik dari sebuah tipe entitas disebut sebagai entity occurrence.
11 Tipe entitas dapat diklasifikasikan menjadi dua jenis, yaitu: 1) Strong entity, yaitu tipe entitas yang keberadaannya tidak bergantung pada entitas lain. Karakteristik dari strong entity adalah setiap entitas diidentifikasi secara unik oleh atribut primary key pada entitas tersebut. Strong entity disebut juga sebagai parent, owner, atau dominant. 2) Weak entity, yaitu tipe entitas yang keberadaannya bergantung pada entitas lain. Karakteristik dari weak entity adalah entitas tersebut tidak dapat diidentifikasi secara unik oleh atribut dalam entitas itu sendiri, sehingga untuk dapat diidentifikasi harus menggunakan atribut primary key pada strong entity. Weak entity disebut juga sebagai child, dependent, atau subordinate.
Gambar 2.2 Contoh Representasi Entitas (Sumber: Connolly dan Begg, 2010:374)
Gambar 2.3 Contoh Representasi Strong Entity dan Weak Entity (Sumber: Connolly dan Begg, 2010:384)
12 2.1.5.2 Tipe Relasi Menurut Connolly dan Begg (2010:374), tipe relasi adalah sekumpulan keterhubungan yang mempunyai arti antara tipe entitas yang ada. Keterhubungan yang diidentifikasikan secara unik yang meliputi keberadaan tiap tipe entitas yang berpartisipasi disebut sebagai relationship occurrence. Derajat
dari
tipe
relasi
adalah
jumlah
entitas
yang
berpartisipasi dalam sebuah relasi. Jumlah entitas yang berpartisipasi dalam sebuah relasi bisa melibatkan dua entitas (binary relationship), tiga entitas (ternary relationship), atau empat entitas (quarternary relationship).
Gambar 2.4 Contoh Representasi Tipe Relasi (Sumber: Connolly dan Begg, 2010:376)
2.1.5.3 Atribut Menurut Connolly dan Begg (2010:379), atribut merupakan sifat-sifat dari sebuah entitas atau tipe relasi. Himpunan nilai yang diperbolehkan untuk satu atau lebih atribut disebut sebagai domain atribut. Domain atribut terdiri atas: 1) Simple attribute, yaitu atribut yang terdiri dari satu komponen tunggal dengan keberadaan yang independen dan tidak dapat dibagi menjadi bagian yang lebih kecil lagi. 2) Composite attribute, yaitu atribut yang terdiri dari beberapa komponen,
dimana
masing-masing
keberadaan yang independen.
komponen
memiliki
13 3) Single-valued attribute, yaitu atribut yang mempunyai nilai tunggal untuk setiap kejadian. 4) Multi-valued attribute, yaitu atribut yang mempunyai beberapa nilai untuk setiap kejadian. 5) Derived attribute, yaitu atribut yang mempunyai nilai yang dihasilkan dari satu atau beberapa atribut lainnya dan tidak harus berasal dari satu entitas.
2.1.5.4 Key Terdapat lima jenis key yang biasa digunakan dalam ER Modeling, yaitu: 1) Candidate key, yaitu sejumlah minimal atribut yang dapat mengidentifikasikan setiap kejadian dari tipe entitas secara unik. 2) Primary
key,
yaitu
candidate
key
yang
dipilih
untuk
mengidentifikasikan setiap kejadian dari tipe entitas secara unik. 3) Alternate key, yaitu candidate key yang tidak terpilih menjadi primary key. 4) Composite key, yaitu candidate key yang terdiri dari dua atau lebih atribut. 5) Foreign key, yaitu atribut atau sekumpulan atribut pada suatu relasi yang sesuai dengan candidate key dari beberapa relasi.
2.1.5.5 Structural Constraint Menurut Connolly dan Begg (2010:385), batasan utama dalam sebuah relasi disebut sebagai multiplicity. Multiplicity adalah jumlah kejadian yang mungkin terjadi pada suatu entitas yang tehubung ke satu kejadian dari entitas yang lain yang berhubungan melalui suatu relasi. Derajat relasi yang biasa digunakan adalah binary relationship. Ada tiga tipe binary relationship yang biasanya digunakan, yaitu: 1) Derajat hubungan one-to-one (1:1), terjadi bila setiap anggota entitas A hanya boleh berpasangan dengan satu anggota dari entitas B. Dan sebaliknya, anggota dari entitas B hanya boleh berpasangan dengan satu anggota dari entitas A.
14 2) Derajat hubungan one-to-many (1:*), terjadi bila setiap anggota entitas A dapat berpasangan dengan lebih dari satu anggota dari entitas B. Dan sebaliknya, anggota dari entitas B hanya boleh berpasangan dengan satu anggota dari entitas A. 3) Derajat hubungan many-to-many (*:*), terjadi bila setiap anggota entitas A dapat berpasangan dengan lebih dari satu anggota dari entitas B, dan anggota dari entitas B juga dapat berpasangan dengan lebih dari satu anggota dari entitas A. Menurut Connolly dan Begg (2010:390-391), multiplicity terdiri atas dua batasan yang berbeda, yaitu: 1) Cardinality, mendeskripsikan nilai maksimum dari relasi yang mungkin terjadi untuk entitas yang berpartisipasi dalam relasi tersebut. 2) Participation, menentukan apakah seluruh atau sebagian entitas yang berpartisipasi dalam suatu relasi. Participation constraint dibagi menjadi dua jenis, yaitu mandatory participation dan optional participation. Mandatory participation melibatkan semua entitas pada suatu relasi. Sedangkan optional participation melibatkan beberapa entitas pada suatu relasi.
Gambar 2.5 Representasi Cardinality dan Participation Constraint (Sumber: Connolly dan Begg, 2010:391)
15 2.1.6 Normalisasi Menurut Connolly dan Begg (2010:416), normalisasi adalah suatu teknik yang digunakan untuk menghasilkan sekumpulan relasi dengan sifatsifat yang diinginkan dan sesuai dengan kebutuhan pada perusahaan. Tujuan
utama
normalisasi
adalah
untuk
mengidentifikasikan
kesesuaian relasi yang mendukung kebutuhan data pada perusahaan. Karakteristik dari kesesuaian relasi tersebut mencakup jumlah minimal atribut yang diperlukan untuk mendukung kebutuhan perusahaan, atribut dengan hubungan logika yang disebut sebagai ketergantungan fungsional ditemukan di dalam relasi yang sama, dan redundansi yang minimal untuk setiap atribut. Tingkatan normalisasi dibagi menjadi beberapa tahap, yaitu: 1) Unnormalized Form (UNF) UNF adalah suatu tabel yang terdiri dari satu atau lebih kelompok yang berulang (repeating group). Kelompok yang berulang adalah sebuah atribut atau sekumpulan atribut di dalam tabel yang memiliki banyak nilai untuk keberadaan yang tunggal. 2) First Normal Form (1NF) 1NF adalah sebuah relasi dimana gabungan dari tiap baris dan kolom mengandung satu dan hanya satu nilai. Sebuah relasi berada dalam bentuk 1NF jika relasi tersebut tidak berisi atribut yang berulang. Proses untuk mengubah UNF menjadi 1NF adalah sebagai berikut: a) Tentukan satu atau kumpulan atribut sebagai key untuk unnormalized table. b) Identifikasikan kelompok yang berulang dalam unnormalized table. c) Hilangkan kelompok yang berulang, dengan cara memasukkan data yang sesuai ke dalam kolom kosong pada baris yang berisikan data yang berulang atau dengan memindahkan kelompok perulangan tersebut ke dalam relasi baru yang terpisah dan meninggalkan salinan dari key atribut. 3) Second Normal Form (2NF) 2NF adalah sebuah relasi yang terdapat pada 1NF dan setiap atribut yang bukan primary key memiliki ketergantungan penuh (fully functional
16 dependent) terhadap primary key. Ketergantungan penuh terjadi jika A dan B merupakan atribut dari suatu relasi, dan B dikatakan bergantung penuh terhadap A jika B bergantung penuh terhadap A, bukan terhadap subset dari A. Proses untuk mengubah 1NF menjadi 2NF adalah sebagai berikut: a) Identifikasi primary key dalam relasi 1NF. b) Identifikasi ketergantungan fungsional dalam relasi. c) Jika terdapat ketergantungan parsial terhadap primary key, maka hilangkan dengan menempatkannya ke dalam relasi yang baru bersama dengan salinan dari determinannya. Menurut Connolly dan Begg (2010:421), determinan mengacu pada sebuah atribut atau sekelompok atribut yang terletak di sebelah kiri anak panah dari ketergantungan fungsional. Pada Gambar 2.6, A merupakan determinan untuk B.
Gambar 2.6 Representasi Ketergantungan Fungsional (Sumber: Connolly dan Begg, 2010:421)
4) Third Normal Form (3NF) 3NF adalah relasi yang terdapat pada 1NF dan 2NF dimana tidak terdapat atribut yang bukan primary key bergantung secara transitif (transitively dependent) terhadap primary key. Ketergantungan transitif adalah sebuah kondisi dimana A, B, dan C merupakan atribut dari suatu relasi, B bergantung pada A (AB), C bergantung pada B (BC), maka dapat dikatakan bahwa C bergantung secara transitif terhadap A melalui B. Proses untuk mengubah 2NF menjadi 3NF adalah sebagai berikut: a) Identifikasi primary key dalam relasi 2NF. b) Identifikasi ketergantungan fungsional dalam relasi. c) Jika terdapat ketergantungan transitif terhadap primary key, maka hilangkan dengan menempatkannya dalam relasi yang baru bersama dengan salinan dari determinannya.
17 2.1.7 Siklus Hidup Pengembangan Basis Data Menurut Connolly dan Begg (2010:313), sebuah sistem basis data merupakan komponen dasar dari sistem informasi sebuah organisasi yang lebih besar, sehingga siklus hidup pengembangan basis data terkait erat dengan sistem informasi. Pada sistem basis data yang berskala kecil dengan jumlah pengguna yang sedikit, siklus hidup pengembangan basis datanya tidak terlalu kompleks. Sedangkan, pada sistem basis data dengan skala menengah atau besar yang memiliki antara puluhan sampai ribuan pengguna, dan menggunakan ratusan query dan program aplikasi, maka siklus hidup pengembangan basis data akan menjadi lebih kompleks. Gambar 2.7 menggambarkan tahapan siklus hidup pengembangan sistem basis data.
Gambar 2.7 Tahapan Siklus Hidup Pengembangan Sistem Basis Data (Sumber: Connolly dan Begg, 2010:314)
18 2.1.7.1 Database Planning Menurut Connolly dan Begg (2010:313), database planning adalah aktivitas manajemen yang memungkinkan tahapan dari siklus hidup pengembangan sistem basis data dapat direalisasikan secara efisien dan efektif. Terdapat tiga hal penting dalam merumuskan suatu strategi sistem informasi, yaitu: 1) Mengidentifikasikan rencana dan tujuan perusahaan dengan menentukan sistem informasi yang diperlukan. 2) Mengevaluasi sistem informasi yang ada untuk menentukan kekuatan dan kelemahan yang dimiliki oleh sistem tersebut. 3) Memperkirakan peluang Information Technology (IT) yang mungkin menghasilkan keuntungan kompetitif.
2.1.7.2 System Definition Menurut Connolly dan Begg (2010:316), system definition bertujuan untuk mendeskripsikan ruang lingkup serta batasan dari aplikasi basis data dan sudut pandang dari sebagian besar pengguna (major user view). User view mendefinisikan apa saja yang dibutuhkan dari suatu sistem basis data berdasarkan perspektif dari peranan pekerjaan (seperti manajer atau supervisor) atau area aplikasi (seperti pemasaran, personalia, atau pengendalian persediaan). Suatu sistem basis data dapat memiliki satu atau lebih user view. Setiap user view mendefinisikan apa yang dibutuhkan dalam sistem basis data yang berhubungan dengan data dan menampilkan transaksi dalam data.
2.1.7.3 Requirements Collection and Analysis Menurut Connolly dan Begg (2010:316), requirements collection
and
analysis
adalah
proses
mengumpulkan
dan
menganalisis informasi tentang bagian organisasi yang akan didukung oleh sistem basis data, dan menggunakan informasi tersebut untuk mengidentifikasikan kebutuhan pengguna terhadap sistem yang baru.
19 Menurut Connolly dan Begg (2010:318-319), ada tiga pendekatan yang dapat dilakukan dalam pengumpulan data dan analisis informasi, yaitu: 1) Pendekatan centralized Pada pendekatan centralized, kebutuhan untuk setiap user view disatukan ke dalam suatu bentuk dari kebutuhan sistem basis data yang baru. Sebuah model data merepresentasikan semua user view yang dihasilkan selama tahap perancangan basis data. 2) Pendekatan view integration Pada pendekatan view integration, kebutuhan untuk setiap user view dibuat dalam model data yang terpisah. Model data yang menggambarkan single user view disebut sebagai model data lokal, disusun dalam bentuk diagram dan dokumentasi yang secara formal mendeskripsikan kebutuhan dari satu atau lebih tetapi tidak semua user view pada basis data. Model data lokal kemudian digabungkan untuk menghasilkan model data global yang menggambarkan semua kebutuhan pengguna untuk basis data. 3) Pendekatan gabungan Pendekatan gabungan menggunakan pendekatan centralized dan view integration. Menurut Connolly dan Begg (2010:344-347), terdapat banyak teknik untuk memperoleh informasi yang disebut sebagai fact-finding techniques atau teknik pencarian fakta. Ada lima teknik pencarian fakta yang biasa digunakan, yaitu: 1) Pemeriksaan dokumen (examining documentation) Pemeriksaan dokumen dapat bermanfaat dalam membantu untuk menyediakan informasi perusahaan yang berkaitan dengan masalah yang sedang dihadapi. Dengan memerikasa dokumen, formulir, laporan, dan file yang berhubungan dengan sistem yang ada, pemahaman tentang sistem dapat diperoleh dengan mudah. 2) Wawancara (interviewing) Wawancara merupakan teknik yang paling sering digunakan. Melalui wawancara, informasi akan diperoleh dengan cara bertatap muka dengan individu-individu yang bersangkutan.
20 Wawancara bertujuan untuk menemukan fakta, memverifikasi fakta, mengklarifikasi fakta, menampilkan antusiasme, melibatkan end-user, mengidentifikasi kebutuhan, dan mendapatkan opini dari individu-individu yang bersangkutan. 3) Observasi Observasi merupakan salah satu teknik yang paling efektif untuk memahami sebuah sistem. Observasi memungkinkan individu untuk berpartisipasi dan melihat informasi secara langsung aktivitas dari sebuah sistem dan mempelajari sistem yang sedang berjalan. 4) Penelitian (research) Penelitian merupakan suatu teknik yang berguna untuk meneliti sebuah aplikasi dan masalah yang ada. Jurnal, buku, dan internet merupakan sumber informasi yang baik bagi penelitian. Dari hasil penelitian, akan didapatkan informasi tentang bagaimana masalah yang serupa dapat diatasi. 5) Kuesioner Kuesioner merupakan dokumen dengan tujuan khusus yang memungkinkan untuk mengumpulkan fakta dari banyak orang.
2.1.7.4 Database Design Menurut Connolly dan Begg (2010:320-321), database design adalah proses membuat sebuah rancangan yang akan mendukung operasional dan tujuan perusahaan. Terdapat empat pendekatan yang dapat digunakan untuk merancang basis data, yaitu: 1) Pendekatan bottom-up Pendekatan bottom-up dimulai dari atribut dasar, yaitu sifat-sifat entitas dan relasi, menganalisis penggabungan antar atribut yang dikelompokkan ke dalam suatu relasi yang menggambarkan tipe dari entitas dan relasi antar entitas. 2) Pendekatan top-down Pendekatan top-down diawali dengan pembentukan model data yang berisi beberapa entitas tingkat tinggi dan relasi-relasi yang
21 ada, kemudian dilanjutkan dengan mengindentifikasikan entitas dan relasi antar entitas, serta atribut lainnya. 3) Pendekatan inside-out Pendekatan inside-out berhubungan dengan pendekatan bottomup, tetapi sedikit berbeda pada identifikasi awal sekumpulan entitas utama dan kemudian menyebar ke entitas, relasi, dan atribut yang berhubungan dengan entitas utama yang terlebih dahulu diidentifikasi. 4) Pendekatan gabungan Pendekatan gabungan menggunakan pendekatan bottom-up dan top-down. Menurut Connolly dan Begg (2010:322), terdapat tiga tahap dalam perancangan sebuah basis data, yaitu perancangan basis data konseptual, perancangan basis data logikal, dan perancangan basis data fisikal. Tahap-tahap ini akan dijelaskan pada subbab 2.1.8.
2.1.7.5 DBMS Selection (Optional) Menurut Connolly dan Begg (2010:325-329), pemilihan DBMS bertujuan untuk memilih DBMS yang tepat sehingga akan mendukung sistem basis data yang dibuat. Terdapat empat tahapan utama dalam pemilihan DBMS, yaitu: 1) Mendefinisikan tujuan dan cakupan dari referensi pembelajaran. 2) Mencatat dan membandingkan dua atau tiga produk DBMS. 3) Mengevaluasi produk DBMS. 4) Merekomendasikan pemilihan dan membuat laporan dari evaluasi produk DBMS.
2.1.7.6 Application Design Menurut Connolly dan Begg (2010:329), application design adalah proses merancang antarmuka pengguna dan program aplikasi yang akan menggunakan dan memproses basis data.
22 2.1.7.7 Prototyping (Optional) Menurut Connolly dan Begg (2010:333), prototyping adalah proses membangun sebuah model kerja dari sebuah sistem basis data. Tujuan utama prototyping adalah memungkinkan pengguna menggunakan prototype untuk mengidentifikasi fitur-fitur yang telah bekerja dengan baik atau fitur yang kurang pada sistem, dan memungkinkan pengguna untuk memberikan masukan perbaikan atau penambahan fitur baru ke dalam sistem basis data. Prototyping juga dapat digunakan untuk mengklarifikasi kebutuhan pengguna, dan mengevaluasi kelayakan dari rancangan sistem. Terdapat dua jenis prototyping yang digunakan saat ini, yaitu: 1) Requirement
prototyping,
digunakan
untuk
menentukan
kebutuhan suatu sistem basis data yang diusulkan dan ketika kebutuhan terhadap sistem basis data telah lengkap, maka prototype tersebut tidak digunakan lagi. 2) Evolutionary prototyping, digunakan untuk tujuan yang sama dengan requirement prototyping, tetapi memiliki perbedaaan yang mendasar, yaitu prototype tidak dibuang tetapi dikembangkan lebih lanjut menjadi sistem basis data.
2.1.7.8 Implementation Menurut Connolly dan Begg (2010:333), implementation merupakan realisasi fisik dari basis data dan rancangan aplikasi. Implementasi basis data dapat dicapai dengan menggunakan Data Definition Language (DDL) dari DBMS yang dipilih atau sebuah Graphical User Interface (GUI) yang menyediakan fungsi yang sama sambil menyembunyikan perintah DDL tingkat rendah. Perintah DDL digunakan untuk membuat struktur basis data dan file basis data yang masih kosong. Program aplikasi diimplementasikan dengan menggunakan bahasa generasi ketiga atau keempat (3GL atau 4GL). Bagian dari program
aplikasi
adalah
transaksi
pada
basis
data
yang
diimplementasikan dengan Data Manipulation Language (DML) dari DBMS.
23 2.1.7.9 Data Conversion and Loading Menurut Connolly dan Begg (2010:334), data conversion and loading merupakan pemindahan data yang ada ke dalam basis data yang baru dan mengubah aplikasi yang sedang berjalan agar dapat dijalankan pada basis data yang baru. Tahapan ini dibutuhkan hanya ketika sistem basis data yang baru menggantikan sistem basis data yang lama.
2.1.7.10 Testing Menurut Connolly dan Begg (2010:334), testing merupakan proses
menjalankan
program
aplikasi
dengan
tujuan
Begg
(2010:335),
untuk
menemukan kesalahan-kesalahan.
2.1.7.11 Operational Maintenance Menurut
Connolly
dan
operational
maintenance merupakan proses mengawasi dan memelihara sistem basis data setelah dilakukannya instalasi. Aktivitas yang terdapat pada operational maintenance adalah sebagai berikut: 1) Mengawasi performa sistem. Jika performa menurun, maka perlu dilakukan perbaikan terhadap basis data. 2) Memelihara dan memperbarui aplikasi basis data jika dibutuhkan. Kebutuhan baru akan disatukan ke dalam sistem basis data melalui langkah-langkah sebelumnya yang terdapat dalam siklus hidup basis data.
2.1.8 Metodologi Perancangan Basis Data Menurut Connolly dan Begg (2010:467), metodologi perancangan basis data terbagi menjadi tiga tahapan utama, yaitu perancangan basis data konseptual, perancangan basis data logikal, dan perancangan basis data fisikal.
2.1.8.1 Perancangan Basis Data Konseptual Menurut Connolly dan Begg (2010:467), perancangan basis data konseptual merupakan suatu proses pembentukan model yang
24 berasal dari data yang digunakan dalam perusahaan, dan bebas terhadap keseluruhan aspek fisik. Menurut Connolly dan Begg (2010:470-485), langkah utama yang dilakukan dalam perancangan basis data konseptual adalah membuat sebuah model data konseptual. Terdapat sembilan langkah untuk membuat sebuah model data konseptual, yaitu: 1) Mengidentifikasi tipe entitas Langkah ini bertujuan untuk mengidentifikasi tipe entitas utama yang terdiri dari nama, deskripsi, alias, dan occurrence dari entitas. Salah satu metode untuk mengidentifikasi entitas adalah dengan melihat rincian kebutuhan dari pengguna. 2) Mengidentifikasi tipe relasi Tipe relasi diidentifikasi untuk memperoleh semua relasi yang ada antara tipe entitas. Identifikasi tipe relasi terdiri dari nama entitas, multiplicity, dan nama relasi. 3) Mengidentifikasi dan mengasosiasikan atribut dengan tipe entitas atau tipe relasi Semua atribut diasosiakan dengan tipe entitas atau tipe relasi yang sesuai. Identifikasi atribut terdiri dari nama entitas, atribut, deskripsi dari atribut, tipe data dan panjang data, null yang menunjukkan apakah suatu atribut boleh bernilai kosong atau tidak, dan multi-valued yang menunjukkan apakah suatu atribut mempunyai beberapa nilai untuk setiap kejadian atau tidak. 4) Menentukan domain atribut Domain atribut ditetapkan untuk masing-masing atribut dalam model data konseptual, yang meliputi himpunan nilai dan format yang diperbolehkan untuk setiap atribut. 5) Menentukan candidate key, primary key, dan alternate key Tujuannya adalah untuk menentukan candidate key untuk masingh-masing tipe entitas. Apabila terdapat lebih dari satu candidate key, maka pilihlah salah satu candidate key untuk menjadi primary key dan candidate key lainnya menjadi alternate key.
25 6) Mempertimbangkan penggunaan konsep enhanced modeling (optional) Penggunaan konsep enhanced modeling, seperti spesialisasi, generalisasi, agregasi, dan komposisi bisa dipertimbangkan. 7) Memeriksa redundansi pada model data konseptual Langkah ini bertujuan untuk memeriksa apakah terjadi redundansi pada model data konseptual. Terdapat tiga aktivitas untuk memeriksa redundansi pada model data konseptual, yaitu: a) Memeriksa ulang relasi one-to-one (1:1). b) Menghilangkan relasi yang redundan atau berulang. c) Mempertimbangkan dimensi waktu. 8) Memvalidasi model data konseptual terhadap transaksi pengguna Langkah ini bertujuan untuk memastikan bahwa model data konseptual dapat mendukung transaksi yang diperlukan, dengan cara mendeskripsikan transaksi dan menggunakan jalur-jalur transaksi. 9) Meninjau kembali model data konseptual dengan pengguna Model data konseptual perlu ditinjau kembali dengan pengguna untuk memastikan bahwa model data konseptual merupakan representasi nyata dari kebutuhan perusahaan.
2.1.8.2 Perancangan Basis Data Logikal Menurut Connolly dan Begg (2010:467), perancangan basis data logikal merupakan suatu proses pembentukan model yang berasal dari data yang digunakan dalam perusahaan berdasarkan model data tertentu, tetapi bebas terhadap DBMS tertentu dan aspek fisik lainnya. Menurut Connolly dan Begg (2010:490-518), langkah utama yang dilakukan dalam perancangan basis data logikal adalah membuat dan memvalidasi model data logikal. Terdapat tujuh langkah untuk membuat dan memvalidasi sebuah model data logikal, yaitu: 1) Menurunkan relasi untuk model data logikal Langkah ini bertujuan untuk membuat suatu relasi untuk model data logikal yang merepresentasikan entitas, relasi, dan juga
26 atribut yang telah diidentifikasi pada perancangan basis data konseptual. Relasi untuk model data logikal dapat diturunkan berdasarkan model data konseptual berikut: a) Strong entity type b) Weak entity type c) Tipe relasi biner one-to-many (1:*) d) Tipe relasi biner one-to-one (1:1) e) Tipe relasi rekursif one-to-one (1:1) f) Tipe relasi superclass/subclass g) Tipe relasi biner many-to-many (*:*) h) Tipe relasi kompleks i) Multi-valued attribute 2) Memvalidasi relasi menggunakan normalisasi Normalisasi bertujuan untuk memastikan bahwa sekumpulan relasi memiliki jumlah atribut yang minimum dan cukup untuk mendukung kebutuhan data perusahaan. 3) Memvalidasi relasi terhadap transaksi pengguna Langkah ini bertujuan untuk memastikan bahwa relasi dalam model data logikal telah mendukung transaksi yang diperlukan oleh pengguna. 4) Menentukan integrity constraint Menurut Connolly dan Begg (2010:502-505), integrity constraint merupakan batasan yang digunakan untuk menghindari adanya data yang tidak lengkap, tidak akurat, dan tidak konsisten dalam basis data. Integrity constraint yang perlu dipertimbangkan adalah: a) Required data, dimana beberapa atribut harus memiliki nilai yang benar atau tidak boleh bernilai null. b) Batasan domain dari setiap atribut. c) Multiplicity, merepresentasikan batasan yang terletak pada relasi antara data di dalam basis data. d) Entity integrity, dimana primary key dari sebuah entitas tidak boleh bernilai null.
27 e) Referential integrity, dimana jika foreign key berisi suatu nilai, maka nilai tersebut harus menunjuk ke sebuah baris yang ada pada relasi ‘parent’. f) General constraint, merupakan aturan tambahan yang diberikan oleh pengguna atau database administrator. 5) Meninjau kembali model data logikal dengan pengguna Model data logikal perlu ditinjau kembali dengan pengguna untuk memastikan bahwa model data logikal merupakan representasi nyata dari kebutuhan perusahaan. 6) Menggabungkan model data logikal menjadi model global (optional) Langkah ini bertujuan untuk menggabungkan model data logikal lokal ke dalam model data logikal global yang tunggal yang mewakili semua user view tentang basis data. Aktivitas yang dilakukan untuk menggabungkan model data logikal menjadi model global meliputi menggabungkan model data logikal lokal ke dalam model global, memvalidasi model data logikal global, dan meninjau kembali model data logikal global dengan pengguna. 7) Memeriksa perkembangan di masa yang akan datang Langkah ini bertujuan untuk menentukan apakah terjadi perubahan yang signifikan di masa yang akan datang dan untuk menilai apakah model data logikal dapat mengakomodasi perubahan yang terjadi.
2.1.8.3 Perancangan Basis Data Fisikal Menurut Connolly dan Begg (2010:467), perancangan basis data fisikal merupakan suatu proses untuk mengahasilkan deskripsi dari
implementasi
basis
data
pada
penyimpanan
sekunder,
mendeskripsikan relasi dasar, organisasi file, dan indeks yang digunakan untuk mencapai akses terhadap data yang efisien, serta penggabungan beberapa batasan integritas dan ukuran tingkat keamanan.
28 Langkah-langkah yang dilakukan dalam perancangan basis data fisikal adalah sebagai berikut: 1) Menerjemahkan model data logikal untuk target DBMS Langkah ini bertujuan untuk menghasilkan skema basis data dari model data logikal yang dapat diimplementasikan pada target DBMS. Terdapat tiga aktivitas dalam untuk menerjemahkan model data logikal untuk target DBMS, yaitu: a) Merancang relasi dasar. b) Merancang representasi dari derived data. c) Merancang general constraint. 2) Merancang organisasi file dan indeks Langkah ini bertujuan untuk menentukan organisasi file yang optimal untuk menyimpan relasi dasar dan indeks yang diperlukan untuk mencapai akses data yang dapat diterima, serta cara agar relasi dan baris disimpan pada penyimpanan sekunder. Terdapat empat tahapan dalam merancang organisasi file dan indeks, yaitu: a) Menganalisis transaksi. b) Memilih organisasi file. c) Memilih indeks. d) Mengestimasi kebutuhan kapasitas disk. 3) Merancang user view User view dirancang untuk memungkinkan pengguna dapat mengakses data dengan cara yang disesuaikan dengan kebutuhan pengguna dan untuk menyederhanakan operasi kompleks pada relasi dasar. 4) Merancang mekanisme keamanan Mekanisme keamanan dirancang untuk basis data yang telah ditetapkan oleh pengguna selama proses pengumpulan kebutuhan perusahaan dan tahapan dalam siklus hidup pengembangan basis data. 5) Mempertimbangkan controlled redundancy Langkah ini bertujuan untuk menentukan apakah dengan normalisasi dapat meningkatkan performa dari sistem.
29 6) Memonitor dan memperbaiki sistem operasional Langkah ini bertujuan untuk memonitor sistem operasional dan meningkatkan
performa
dari
sistem
dengan
memperbaiki
rancangan yang tidak sesuai dengan kebutuhan.
2.1.9 Structured Query Language (SQL) Menurut Williams dan Sawyer (2007:428), Structured Query Language (SQL) adalah bahasa query standar yang digunakan untuk membuat, memodifikasi, mendapatkan, dan melakukan query database relasional. Database relasional menghubungkan data pada file-file berbeda dengan menggunakan sebuah key (Williams dan Sawyer, 2007:426). Menurut Connolly dan Begg (2010:184), idealnya sebuah bahasa database dapat memungkinkan pengguna untuk: 1) Membuat struktur relasi dan basis data. 2) Melakukan tugas dasar manajemen basis data, seperti penyisipan (insertion), perubahan (modification), dan penghapusan (deletion) data dari relasi. 3) Melakukan query sederhana dan kompleks. SQL memiliki dua komponen utama, yaitu: 1) Data Definition Language (DDL), digunakan untuk pendefinisian struktur basis data dan pengaturan akses terhadap data. 2) Data Manipulation Language (DML), digunakan untuk pengambilan dan perubahan data.
2.2
Teori Tematik Teori-teori tematik yang dibahas adalah rekrutmen dan seleksi karyawan,
internet, World Wide Web (WWW), web application, web design, Hypertext Markup Language (HTML), Personal Home Page (PHP), MySQL, aturan perancangan antarmuka pengguna, Data Flow Diagram (DFD), serta diagram alir (flowchart).
2.2.1 Rekrutmen dan Seleksi Karyawan Menurut Rothwell dan Kazanas (2003:333), rekrutmen terdiri dari aktivitas yang bertujan untuk mengidentifikasi sumber-sumber bakat yang dapat memenuhi kebutuhan organisasi dan menarik sejumlah orang yang
30 tepat untuk pekerjaan yang tepat di waktu dan tempat yang tepat. Yullyanti (2009:132) mendefinisikan rekrutmen sebagai proses untuk menemukan, mengajak, dan menetapkan sejumlah orang guna mendapatkan sejumlah pelamar yang berkualifikasi untuk pekerjaan di suatu perusahaan atau organisasi. Menurut Rothwell dan Kazanas (2003:333-334), seleksi adalah proses untuk mencari dan mengidentifikasi kecocokan antara individu, pekerjaaan, kelompok kerja, dan organisasi. Proses seleksi merupakan rangkaian tahapan khusus yang dimulai ketika pelamar melamar kerja dan diakhiri dengan keputusan penerimaan yang digunakan untuk memutuskan pelamar mana yang akan diterima (Yullyanti, 2009:132). Menurut Rothwell dan Kazanas (2003:335), langkah-langkah yang dilakukan organisasi dalam proses rekrutmen dan seleksi karyawan adalah sebagai berikut: 1) Mengidentifikasi sumber bakat yang tepat. 2) Menetapkan usaha perekrutan secara terus-menerus. 3) Menetapkan persyaratan khusus yang ditetapkan untuk sebuah lowongan. 4) Menarik individu yang melamar untuk sebuah lowongan. 5) Melakukan penyaringan individu yang telah melamar. 6) Mengadakan tes yang digunakan untuk menilai kekuatan dan kelemahan relatif dari pelamar. 7) Melakukan wawancara dengan kandidat pelamar yang menjanjikan. 8) Mengecek latar belakang dari pelamar yang menjanjikan. 9) Memberikan sebuah penawaran kepada pelamar yang menjanjikan. 10) Menempatkan dan melakukan orientasi kepada pelamar yang diterima.
2.2.2 Internet Williams dan Sawyer (2007:17) mendefinisikan internet sebagai jaringan komputer di seluruh dunia yang menghubungkan ratusan bahkan ribuan jaringan yang lebih kecil, seperti jaringan pendidikan, komersial, nirlaba, militer, dan jaringan individual. Sedangkan menurut Connolly dan Begg (2010:1024), internet merupakan sekumpulan jaringan komputer di dunia yang saling terkoneksi.
31 2.2.3 World Wide Web (WWW) Menurut Williams dan Sawyer (2007:17), World Wide Web (WWW) atau yang sering disebut sebagai web merupakan suatu sistem interkoneksi komputer internet (disebut server) yang mendukung dokumen-dokumen berformat multimedia. Kata multimedia berarti banyak media, berkaitan dengan teknologi yang menyajikan informasi di lebih dari satu media, seperti teks, gambar bergerak maupun tidak bergerak, dan suara. Web dapat menyediakan informasi dalam beragam bentuk. Menurut Connolly dan Begg (2010:1028), web adalah sebuah sistem berbasis hypermedia yang menyediakan sarana penelusuran informasi pada internet secara non-sequential dengan menggunakan hyperlink. Forouzan (2010:658) mendefinisikan hypermedia sebagai istilah yang diterapkan untuk dokumen yang berisi link ke dokumen tekstual atau dokumen yang memuat gambar, video, atau suara.
2.2.4 Web Application Menurut Murach dan Steelman (2008:4), aplikasi web (web application) merupakan sekumpulan halaman web yang dihasilkan dalam menanggapi permintaan pengguna. Internet memiliki banyak tipe aplikasi web yang berbeda, diantaranya search engine, toko online, situs berita, discussion group, dan games. Menurut Murach dan Steelman (2008:6), aplikasi web merupakan jenis dari aplikasi client/server. Komponen dari aplikasi web disimpan baik di komputer client maupun di komputer server. Untuk mengakses sebuah web application, diperlukan sebuah web browser yang berjalan di komputer client. Web browser merupakan perangkat lunak yang memungkinkan pengguna atau client untuk mencari dan mengakses beragam komponen web serta berpindah dari satu halaman ke halaman web lainnya. Contoh perangkat lunak web browser yang sering digunakan saat ini adalah Microsoft Internet Explorer, Mozilla Firefox, dan Google Chrome. Aplikasi web tersimpan di komputer server. Komputer server akan menjalankan perangkat lunak web server yang melayani permintaan pengguna atau client dan mengirimkan informasi berupa halaman web ke web browser yang berjalan di komputer client. Contoh perangkat lunak web server adalah Apache.
32 Saat ini, hampir semua aplikasi web bekerja dengan data yang tersimpan di dalam sebuah basis data, sehingga server harus menjalankan Database Management System (DBMS) untuk dapat mengakses data dalam basis data. Contoh DBMS yang sering digunakan untuk aplikasi web adalah Oracle dan MySQL.
2.2.5 Web Design Menurut Bear (2013), web design adalah seni dan proses pembuatan halaman web yang melibatkan estetika dan mekanisme operasi dari halaman web walaupun berfokus pada tampilan dan keindahan dari halaman web. Beberapa aspek yang dapat dimasukkan dalam web design adalah grafis dan pembuatan animasi, pemilihan warna, pemilihan font, desain navigasi, dan pembuatan konten.
2.2.6 Hypertext Markup Language (HTML) Menurut Williams dan Sawyer (2007:67), Hypertext Markup Language (HTML) adalah sekumpulan perintah khusus (disebut tag atau markup) yang digunakan untuk menentukan struktur, bentuk, dan link pada dokumen ke dokumen multimedia lain di web.
2.2.7 Personal Home Page (PHP) Menurut Welling dan Thomson (2009:2), PHP merupakan bahasa server-side scripting yang dirancang khusus untuk web. Kode PHP dapat dimasukkan ke dalam halaman HTML yang akan dieksekusi setiap kali halaman tersebut dikunjungi. Kode PHP akan diinterpretasikan di web server dan menghasilkan keluaran yang akan dilihat oleh pengunjung berupa halaman HTML atau keluaran lainnya. PHP memiliki beberapa keunggulan bila dibandingkan dengan bahasa pemrograman web lainnya, yaitu: 1) Performa yang tinggi 2) Adanya integrasi dengan basis data 3) Memiliki library untuk berbagai web yang umum 4) Merupakan bahasa pemrograman yang bersifat gratis (open source) 5) Mudah dipelajari dan digunakan
33 6) Mendukung object-oriented 7) Dapat berjalan pada berbagai jenis sistem operasi 8) Dapat diimplementasikan dengan mudah dengan menggunakan sebuah framework
2.2.8 MySQL Menurut Welling dan Thomson (2009:3), MySQL merupakan Relational Database Management System (RDBMS) yang sangat cepat. Server MySQL mengatur akses terhadap data untuk memastikan bahwa beberapa pengguna dapat mengakses basis data bersamaan, menyediakan akses yang cepat terhadap data, dan memastikan hanya pengguna yang memiliki hak akses yang dapat mengakses data. MySQL memiliki beberapa keunggulan, yaitu performa yang tinggi, bersifat open source, mudah untuk digunakan, dan dapat berjalan pada berbagai jenis sistem operasi.
2.2.9 Aturan Perancangan Antarmuka Pengguna Williams
dan
Sawyer
(2007:131)
mendefinisikan
antarmuka
pengguna (user interface) sebagai layar tampilan yang bisa dikontrol dan berfungsi sebagai jembatan bagi pengguna untuk berkomunikasi atau berinteraksi dengan komputer. Menurut Shneiderman dan Plaisant (2005:74-75), terdapat delapan aturan yang dikenal dengan sebutan eight golden rules of interface design. Kedelapan aturan tersebut dapat dipertimbangkan untuk merancang antarmuka pengguna yang baik. Isi dari kedelapan aturan tersebut adalah: 1) Berusaha untuk konsisten Konsistensi dilakukan pada istilah-istilah yang digunakan pada prompt, menu, dan layar bantuan. Konsistensi juga dilakukan pada pewarnaan, tata letak, huruf besar, jenis tulisan (font), dan sebagainya. 2) Memenuhi kebutuhan universal Dalam melakukan perancangan sistem sebaiknya kenali kebutuhan pengguna. Dengan menambahkan fitur seperti penjelasan untuk pemula dan shortcut untuk pengguna yang ahli, dapat memperkaya rancangan antarmuka dan meningkatkan kualitas sistem yang dirasakan pengguna.
34 3) Memberikan umpan balik yang informatif Umpan balik sebaiknya disertakan untuk setiap aksi pengguna. Umpan balik yang sederhana dapat diberikan untuk aksi yang sering dilakukan. Umpan balik sebaiknya lebih substansial bila aksi pengguna merupakan hal yang penting. 4) Merancang dialog yang memberikan penutupan Urutan tindakan sebaiknya diorganisasi dalam suatu kelompok dengan bagian awal, tengah, dan akhir. Umpan balik yang informatif mengindikasikan bahwa cara yang dilakukan sudah benar dan dapat mempersiapkan kelompok tindakan selanjutnya. 5) Memberikan pencegahan kesalahan Sistem sebaiknya dirancang sedemikian rupa sehingga pengguna tidak dapat membuat kesalahan yang fatal. Jika pengguna membuat kesalahan, maka sistem dapat mendeteksi kesalahan tersebut dengan menawarkan perintah sederhana, konstruktif, dan spesifik untuk pemulihan keadaan. 6) Memungkinkan pembalikan aksi yang mudah Aksi pengguna sebaiknya dapat dibalikkan. Pengguna dapat kembali ke keadaan sebelumnya ketika terjadi kesalahan, sehingga pengguna tidak takut untuk mengeksplorasi pilihan-pilihan lain yang belum biasa digunakan. 7) Mendukung pusat kendali internal Pengguna ingin menjadi pengontrol sistem dan sistem akan merespons aksi yang dilakukan pengguna. 8) Mengurangi beban ingatan jangka pendek Keterbatasan ingatan manusia membutuhkan tampilan yang sederhana, tampilan beberapa halaman sebaiknya disatukan, dan diberikan waktu yang cukup untuk pelatihan kode, mnemonic, dan urutan aksi.
2.2.10 Data Flow Diagram (DFD) Menurut Whitten dan Bentley (2007:317), Data Flow Digaram (DFD) adalah model proses yang digunakan untuk menggambarkan aliran data melalui sebuah sistem dan tugas atau proses yang dilakukan oleh sistem. Suatu DFD harus memiliki sedikitnya satu masukan atau keluaran aliran data untuk suatu external entity dan suatu proses. Keluaran aliran data
35 biasanya memiliki nama yang berbeda dengan masukan aliran data untuk suatu proses. Aliran data dalam DFD hanya satu arah dan setiap aliran data terhubung sedikitnya ke satu proses (Ibrahim dan Yen, 2011:62). DFD memiliki beberapa tingkatan, diantaranya diagram konteks dan diagram nol. Diagram konteks adalah diagram yang terdiri dari suatu proses dan menggambarkan keseluruhan dari suatu sistem. Diagram konteks merupakan level tertinggi dari DFD yang menggambarkan seluruh input ke sistem atau output dari sistem, sehingga diagram konteks akan memberi gambaran tentang keseluruhan sistem. Dalam diagram konteks hanya ada satu proses dan tidak boleh ada data store dalam diagram konteks (Saluky, 2013). Diagram konteks dapat dipecah menjadi diagram yang lebih rinci atau yang dikenal dengan DFD level nol. Jumlah dan nama aliran data maupun external entity pada DFD level nol harus sesuai dengan yang terdapat pada diagram konteks (Ibrahim dan Yen, 2011:62-63).
Tabel 2.1 Notasi pada DFD Simbol
Keterangan Process adalah tugas yang dilakukan oleh sistem
Process Name
dalam merespons aliran data atau kondisi yang masuk. Data flow merepresentasikan masukan data ke suatu proses atau keluaran data dari suatu proses. External entity adalah orang, organisasi, atau sistem lain yang berinteraksi dengan sistem. Data store adalah sekumpulan data yang disimpan untuk penggunaan selanjutnya.
2.2.11 Diagram Alir (Flow Chart) Diagram alir (flow chart) adalah diagram yang menggambarkan aliran proses dari awal sampai akhir (Proboyekti, 2009). Diagram alir memiliki notasi yang melambangkan fungsi tertentu seperti yang terdapat pada Tabel 2.2.
36 Tabel 2.2 Notasi pada Diagram Alir (Flow Chart) Simbol
Keterangan Terminator merupakan titik awal atau akhir dari proses yang terjadi dalam diagram alir. Document merupakan dokumen atau laporan yang digunakan. Decision merupakan cabang dari proses yang terjadi dalam diagram alir. Manual operation merupakan proses yang tidak dapat dilakukan secara otomatis melainkan secara manual. Flow line merupakan arah aliran kerja atau informasi. Off-page connector merupakan penghubung diagram alir ke halaman lain.
2.3
Hasil Penelitian Terkait Hasil penelitian terkait dengan skripsi ini yaitu sistem informasi manajemen
penerimaan CPNS (Calon Pegawai Negeri Sipil) wilayah Jawa Tengah berbasis web yang ditulis oleh Dedy Agung Prabowo, Edi Noersasongko, dan Mohamad Sidiq, serta dimuat pada Jurnal Teknologi Informasi, Volume 6 Nomor 2, Oktober 2010. Dari jurnal tersebut, masalah yang dihadapi oleh Badan Kepegawaian Daerah Provinsi Jawa Tengah adalah proses administrasi penerimaan Calon Pegawai Negeri Sipil yang belum bersifat online, sehingga mengakibatkan proses administasi tidak dapat berjalan dengan efektif dan efisien. Dari hasil penelitian tersebut dapat disimpulkan bahwa dengan dikembangkannya Sistem Informasi Manajemen Penerimaan CPNS, proses administrasi Penerimaan Calon Pegawai Negeri Sipil dapat berjalan dengan efektif dan efisien karena sistem yang telah bersifat online dan dapat diakses oleh seluruh lapisan masyarakat. Proses pengelolaan data kepegawaian pun dapat dilaksanakan dengan cepat dan terintegrasi dengan data lainnya yang mengakibatkan data tersebut dapat digunakan untuk pengambilan keputusan. Selain pemerintahan, perusahaan kini mulai menerapkan sistem rekrutmen secara online. Dalam jurnal E-Recruitment yang telah dimuat pada International Journal of Engineering and Advanced Technology (IJEAT), Volume 1 Nomor 4, April 2012, dan ditulis oleh Avinash S. Kapse, Vishal S. Patil, dan Nikhil V. Patil
37 dijelaskan bahwa perusahaan pun kini menggunakan sistem penerimaan (rekrutmen) calon karyawan secara online karena memberikan kesempatan yang lebih besar dalam menemukan kandidat yang potensial dengan lebih cepat dan efektif (Kapse, Patil, dan Patil, 2012:85). Hal ini juga senada dengan Tommy Septian Purnomo di dalam jurnalnya yang berjudul Rekrutment Online (E-Recruitment) Sebagai Suatu Inovasi dalam Perekrutan Perusahaan, yang dimuat pada Jurnal JIBEKA, Volume 7 Nomor 3, Agustus 2013. Purnomo (2013:56-58) mengatakan bahwa dengan menerapakan erecruitment maka perusahaan dapat melakukan penghematan biaya, memberikan kemudahan dalam penggunaan bagi pelamar, dan proses rekrutmen dapat dilakukan dengan lebih cepat. Beberapa perusahaan besar yang telah menerapkan sistem rekrutmen secara online (dikenal dengan e-recruitment) adalah Microsoft, Oracle, dan Bank of Ireland.
38