BAB 2 LANDASAN TEORI 2.1 Data Data merupakan komponen terpenting di dalam basis data. Data juga digunakan sebagai sumber daya pada suatu perusahaan atau organisasi. Menurut Connoly(2010, p70), data merupakan bagian terpenting dari komponen suatu basis data. Menurut Hoffer(2009, p46), data adalah representasi objek dan kejadian yang tersimpan dan mempunyai arti dan kepentingan kepada lingkungan pengguna. Jadi, data adalah komponen terpenting dalam basis data yang merepresentasikan objek dan kejadian serta nilai yang tersimpan sehingga mempunyai arti dan kepentingan kepada penggunanya. 2.2 Database Basis data merupakan komponen terpenting dalam sistem basis data. Basis data juga terdiri atas tabel-tabel yang saling terhubung satu sama lain. Menurut Connolly (2010, p65), basis data adalah kumpulan data yang saling terkait yang terbagi secara logikal (dan deskripsi 7 8 dari data tersebut), dirancang untuk memenuhi informasi yang dibutuhkan oleh suatu organisasi. Menurut Gordon C.Everst (2010), basis data adalah koleksi atau kumpulan data yang mekanis, terbagi, terdefinisi secara formal dan dikontrol terpusat pada organisasi. Jadi, Basis data adalah kumpulan data yang saling terkait dan digunakan oleh sistem untuk memenuhi kebutuhan informasi suatu organisasi. 2.3 Entity Relationship Modelling (ER Modelling) Entity Relationship Modelling adalah sebuah pemodelan entitas yang saling berhubungan. Hal ini dibuat untuk melihat secara keseluruhan apa saja entitas yang ada di dalam perancangan basis data dan kemana saja hubungan entitas itu. Menurut Connolly (2010, p371), Entity Relationship Modelling adalah pendekatan top-down untuk merancang basis data yang dimulai dengan mengidentifikasi data-data penting yang disebut dengan entitas dan hubungannya di dalam pemodelan suatu data. 2.3.1 Entity Type Entitas memiliki tipe tersendiri untuk mendeskripsikannya. Ada entitas yang lemah dan adapula 9 entitas yang kuat, hal itu terlihat dari seberapa independen entitas tersebut. Menurut Connolly (2010, p372), jenis Entitas adalah sekumpulan objek dengan properties yang sama dan diidentifikasikan oleh perusahaan yang keberadaannya diakui secara independen. Menurut Connolly (2010, p383), jenis Entitas atau Entity Type dibagi menjadi 2 (dua) jenis yaitu : 1. Strong Entity Type Entitas yang tidak bergantung pada entitas lain. 2. Weak Entity Type Entitas yang bergantung pada entitas lain. 2.3.2 Relationship Salah satu hal penting dalam penggambaran ER Modelling adalah harus menggambarkan hubungan antar entitas. Tipe dari hubungan yang terjadi antar entitas pun ada banyak macamnya. Menurut Connolly (2010, p 374) Hubungan Entitas adalah sekumpulan asosiasi yang memiliki arti di antara jenis entitas-entitas. Hubungan antar entitas dibagi menjadi 2 (dua) jenis yaitu: 10 1. Hubungan berdasarkan tingkatannya Jumlah partisipan jenis entitas di dalam hubungan antar entitas. 2. Hubungan Rekursif Hubungan yang entitasnya sama tetapi peran yang berbeda. 2.3.3 Attribute Attribute adalah sifat atau properti yang dimiliki oleh sebuah entitas. Attribute ini berisi catatan-catatan yang disimpan dalam sebuah entitas. Menurut Connolly (2010, p379) Attribute merupakan properties dari entitas atau hubungannya. Di dalam Attribute ada yang disebut dengan Attribute Domain. Attribute Domain adalah sekumpulan nilai yang diperbolehkan untuk satu atau lebih Attribute. Klasifikasi Attribute dibagi menjadi 3 (tiga) yaitu : 1. Simple and Composite Attribute Simple Attribute adalah yang dibentuk dari komponen tunggal dengan komponen independen yang ada. Composite Attribute adalah Attribute yang dibentuk dari komponen jamak dan masingmasing komponennya independen. 11 2. Single-valued and Multi-valued Attribute Single-valued adalah Attribute yang memiliki nilai tunggal untuk setiap kejadian dari tipe entitas yang ada. Multi-valued Attribute adalah Attribute yang memiliki banyak nilai untuk setiap kejadian dari tipe entitas yang ada. Di dalam Attribute ada yang dipakai menjadi key yang terdiri dari : 1. Candidate Key Attribute yang bersifat unik mengidentifikasikan setiap kejadian yang terjadi pada entitas. 2. Primary Key Candidate Key yang telah dipilih untuk dijadikan key utama di dalam entitas yang mengidentifikasikan kejadian yang terjadi pada entitas. 3. Composite Key Candidate Key yang terdiri dari dua atau lebih attribute. 12 2.4 Normalisasi Normalisasi sangat penting di dalam perancangan basis data. Hal tersebut karena Normalisasi membuat record table menjadi normal sehingga mencegah timbulnya redundansi data. Menurut Connolly (2010, p416), Normalisasi adalah suatu teknik untuk menghasilkan suatu relasi dengan properties yang diinginkan untuk menyajikan kebutuhan data perusahaan. Tujuan utama Normalisasi adalah untuk mengidentifikasikan kumpulan relasi yang cocok untuk mendukung kebutuhan data perusahaan. Normalisasi melalui beberapa proses, yang terdiri atas : 1. First Normal Form (1NF) Sebelum melakukan proses 1NF, bentuk tabel dalam keadaan tidak normal (Unnormalize Form/UNF). 1NF adalah keadaan table yang membagi setiap baris dan kolom menjadi hanya satu nilai. 2. Second Normal Form (2NF) Relasi yang ada pada bentuk normal pertama dan setiap Attribute yang bukan kunci bergantung penuh secara fungsional kepada primary key. 13 3. Third Normal Form (3NF) Relasi yang ada pada bentuk normal kedua dan setiap Attribute yang bukan kunci bergantung secara transitif kepada primary key. 2.5 Data Flow Diagram (DFD) Data Flow Diagram (DFD) adalah alat pembuatan model yang memungkinkan profesional sistem untuk menggambarkan sistem sebagai suatu jaringan proses fungsional yang dihubungkan satu sama lain dengan alur data, baik secara manual maupun komputerisasi. DFD ini sering disebut juga dengan nama Bubble chart, Bubble diagram, model proses, diagram alur kerja, atau model fungsi. Menurut Yourdon (2011), Data Flow Diagram merupakan diagram yang mengilustrasikan bagaimana diproses oleh system dalam hal input dan output. Gambar 2.2 Notasi Data Flow Diagram Sumber:(http://www.smartdraw.com/resources/tutorials/DataFlow-Diagram-Notations) 14 2.6 State Transition Diagram ( STD ) State Transition Diagram atau biasa disingkat STD merupakan suatu alat bantu modelling yang menggambarkan sifat ketergantungan pada waktu dari suatu sistem. Menurut Harel and Moore (2011), State Transition Diagram digunakan untuk membuat pemodelan berorientasi objek. Hal yang mendasarinya adalah untuk mendefinisikan suatu sistem yang memiliki sejumlah states. Suatu sistem menerima kejadian dari interaksi yang ada di luar, dan masing-masing kejadian tersebut menyebabkan perpindahan dari satu state ke state lainnya. State Transition Diagram juga memiliki arah yang mengelilingi dalam pemodelan berorientasi objek. Hal tersebut menjelaskan behavior suatu sistem. Ini berarti mengharuskan analyst untuk mendefinisikan semua state yang mungkin terjadi dan ada pada suatu sistem. Baik pada sistem yang kecil, maupun sistem yang besar. Hal ini juga dapat terjadi dengan peningkatan jumlah state yang ada di dalam analisis suatu sistem. Metode berorientasi objek juga mendefinisikan state transition diagram yang terpisah pada masing-masing classnya. Ada 2 (dua) jenis State Transition Diagram, yaitu : model Harel dan model Moore. Sebagai gambaran, dapat dilihat pada gambar di bawah ini : - State Transition Diagram model Harel 15 Gambar 2.3 Contoh State Transistion Diagram model Harel ( Sumber : Harel and Moore, 2011, http://www.cs.unc.edu/~stotts/145/CRC/state.html ) Jenis State Transition Diagram yang paling banyak digunakan adalah yang model Harel, yang terlihat pada Gambar 2.3 dibandingkan model Moore, yang terlihat pada Gambar 2.4. Model ini diadaptasikan dari Unified Modelling Language (UML) sehingga mudah dimengerti alur sistemnya. Hal ini sangat berguna untuk menganalisis sistem beserta alur prosesnya dan menggunakan pendekatan yang dapat menangani proses sistem. Menurut Leoni (2011), State Transition Diagram adalah diagram yang merepresentasikan serangkaian states dan aktivitas yang berkaitan di dalam hubungan suatu sistem. Diagram ini menggambarkan hubungan antar state dengan state yang lainnya, dan juga menjelaskan perpindahan alur suatu sistem sesuai waktu dan prioritas mana yang lebih diutamakan. State Transition Diagram digunakan untuk mengembangkan analyst dalam 16 merangkai suatu sistem secara real-time dan berorientasi objek. Berikut ini adalah contoh gambar dari State Transition Diagram : Gambar 2.4 Contoh State Transistion Diagram ( Sumber : Leoni, 2011, http://www.hit.ac.il/staff/leonidm/information-systems/ch30.html) Berikut ini adalah istilah-istilah yang merupakan bagian dari State Transition Diagram : 1. Activity (function) Sebuah proses atau kejadian yang berpindah pada suatu sistem, dari state satu ke state lainnya. 2. Deterministic state transition diagram Sebuah State Transition Diagram yang memberikan fungsi yang diasosiasikan input yang paling sering dilakukan. 3. Feedback Kembalinya bagian output sistem ke dalam input sehingga memberikan umpan balik secara berkelanjutan. 17 4. Fence diagram Sebuah Transition Diagram yang menggambarkan state secara garis vertical dan aktivitas secara garis horizontal. 5. Node Sebuah simbol (biasanya berbentuk lingkaran) pada State Transition Diagram yang merepresentasikan sebuah state. 6. Non-deterministic state transition diagram Sebuah State Transition Diagram yang memberikan fungsi input lalu diasosiasikan dengan lebih dari sebuah transisi. 7. Real-time system Sebuah sistem yang dirancang untuk menanggapi kejadian nyata dalam waktu yang berjalan (real time). 8. Recursion Kemampuan untuk memanggil state-nya sendiri. 9. State Sebuah kondisi yang menggambarkan suatu phase, bentuk dan struktur alur sistem yang berjalan. 10. Transition Perpindahan dari bagian state yang satu ke bagian state yang lainnya. Jadi, State Transition Diagram adalah diagram yang merepresentasikan serangkaian states dan aktivitas yang berkaitan di dalam hubungan suatu sistem dan sangat berguna untuk 18 menganalisis sistem beserta alur prosesnya karena menggunakan pendekatan yang dapat menangani proses sistem secara berorientasi objek. 2.7 Database Management System (DBMS) Penggunaan DBMS dapat membantu sekaligus mempermudah pengguna untuk melakukan segala akses ke database. Hal tersebut diperjelas oleh Connolly & Begg ( 2011, p 66) menyatakan bahwa DBMS adalah sistem piranti lunak yang memungkinkan pengguna untuk mengdefiniskan, membuat, memelihara, dan mengontrol akses ke dalam database. Database dan DBMS adalah sumber daya perusahaan yang harus dikelola seperti sumber daya lainnya. Data dan database administrator adalah peran umum yang terkait dengan manajemen dan kontrol DBMS dan data. Database administrator bertanggung jawab untuk pengelolaan sumber daya, termasuk perencanaan database, pengembangan dan pemeliharaan standar, kebijakan dan prosedur dan mendesain database konseptual atau logikal. Sedangkan database administrator bertanggung jawab untuk realisasi fisik database termasuk mendesain database fisik dan implementasi, keamanan dan integritas, pemeliharaan sistem operasional dan memastikan kinjera yang memuaskan untuk pengguna. 19 Menurut CJ.Date, DBMS adalah merupakan software yang menghandel seluruh akses pada basis data untuk melayani kebutuhan user. (http://ndrayuda.wordpress.com/2010/11/04/jurnaltentang-database/). 2.7.1 Fungsi Database Management System (DBMS) Fungsi yang ditawarkan oleh DBMS sangatlah banyak. Hal ini membuat pengguna dapat dengan mudahnya mengakses dan mengelola basis data yang ada. Di dalam bukunya, Kronke (2010, p11) menjelaskan bahwa fungsi DBMS terdiri atas : - Membuat basis data - Membuat tabel - Membuat struktur pendukung (contoh : pemberian indeks) - Membaca data pada basis data - Memanipulasi data pada basis data (insert, update, delete) - Mengelola struktur basis data - Membuat aturan - Control Concurrency - Memfasilitasi keamanan, melakukan backup dan recovery 20 2.7.2 Komponen Database Management System (DBMS) Untuk menjalankan Database Management System (DBMS), dibutuhkan beberapa komponen yang mendukungnya. Karena DBMS adalah sebuah perangkat lunak, maka dia tidak akan bisa bekerja tanpa adanya perangkat keras dan pengguna yang mendukungnya. Pada bukunya, Connolly (2010, p68) komponenkomponen basis data terdiri atas : - Perangkat Keras Database aplikasi Management memerlukan System (DBMS) perangkat keras dan untuk menjalankannya agar sistem dapat berjalan dengan baik. - Perangkat Lunak Perangkat lunak yang menghubungkan Database Management System (DBMS) bersama sistem operasi juga dengan jaringan berjalan bersama melalui bahasa yang digunakan seperti Third Generation Programming Language (C , C#, C++, Java) - Data Data merupakan bagian terpenting dalam Database Management System (DBMS). Pada struktur basis 21 data ada yang dinamakan skema, meta data, dan struktur data. - Prosedur Prosedur merupakan instruksi dan aturan yang diberikan dalam merancang basis data. Hal ini bertujuan untuk mengelola basis data untuk dijalankan pada sistem. - Orang Komponen terakhir adalah orang yang dapat mempengaruhi sistem yang berjalan. Gambar 2.5 Komponen Database Management System (DBMS) (Sumber : Connolly, 2010, p68) 2.7.3 Keunggulan Database Management System (DBMS) Database Management System (DBMS) memiliki beberapa keunggulan dibanding dengan tidak memakai DBMS. Hal paling berguna pada DBMS adalah pengguna mampu mengelola dan mengamankan data yang ada pada basis data secara lebih mudah. 22 Menurut Connolly (2010, p77) keunggulan dalam Database Management System (DBMS) adalah sebagai berikut : - Mengendalikan redundansi data Di dalam pengelolaan data diperlukan pengendalian data untuk menghilangkan redundansi dengan mengintegrasikan file-file yang ada pada berbagai tempat dan yang sama tidak disimpan. - Data menjadi konsisten Dengan menghilangkan redundansi maka data akan menjadi konsisten sehingga nilai baru dapat segera dipastikan keakuratannya. - Informasi mengenai data menjadi banyak Dengan mengintegrasikan data-data operasional maka dimungkinkan suatu organisasi mengendalikan informasi dari sumber yang sama sehingga informasi lain dapat diperoleh untuk organisasi. - Dapat berbagi data Secara umum file-file yang disimpan dalam departemen pertukaran data. yang berbeda dapat dilakukan 23 - Meningkatkan integritas Integritas basis data bertujuan untuk mencapai validitas dan konsistensi dalam penyimpanan data, integritas juga digunakan untuk membuat suatu batasan atau constraints. - Meningkatkan keamanan Keamanan basis data diperlukan untuk menjaga keamanan data agar tidak dapat disalahgunakan. - Memberlakukan standard Integrasi diperbolehkan oleh Database Administrator (DBA) untuk menentukan standarstandar yang berlaku dan bersifat penting pada Database Management System (DBMS). - Skala ekonomi Dengan menggabungkan data-data operasional organisasi ke dalam basis data membuat satu sumber penyimpanan data sehingga hemat dalam cost. - Menyesuaikan kebutuhan yang bertentangan Setiap pengguna pada departemen membutuhkan data akan mengalami pertentangan dalam penggunaannya, untuk itu diperlukan pengelolaan untuk mengatasi perbedaan tersebut. 24 - Meningkatkan aksesibilitas dan respon Hasil dari integrasi meningkatkan aksesibilitas dan daya respon yang cepat di dalam menangani permintaan pengguna. - Meningkatkan produktivitas DBMS menyediakan banyak standar dan fungsi agar dapat meningkatkan produktifitas dalam penggunaan, penyimpanan dan pengelolaan data. - Meningkatkan pemeliharaan atas data yang independen Akses data yang telah ditentukan bertujuan untuk penyimpanan data yang efektif sehingga pemeliharaan data dapat berjalan secara independen. - Meningkatkan Concurency Dalam mengakses data secara bersamaan harus dapat dikendalikan agar tidak terjadi kehilangan integritas data. - Meningkatkan pelayanan Backup & Recovery Tanggung jawab pengguna untuk menyediakan ukuran dalam menjaga data dari kehilangan, ditentukan oleh program aplikasi dengan membuat backup dan recovery setiap pengguna. 25 2.7.4 Kelemahan Database Management System (DBMS) Dengan banyaknya keunggulan yang ditawarkan oleh DBMS bukan berarti Database Management System (DBMS) tidak mempunyai kelemahan. Ada beberapa hal yang membuat perusahaan atau organisasi tidak menerapkannya. Menurut Connolly (2010, p80) kelemahan dalam DBMS adalah sebagai berikut : - Kompleksitas Fungsi dari Database Management System (DBMS) yang baik menghasilkan kompleksitas struktur data dan perancang basis data harus menyesuaikan kekompleksitasan tersebut. - Ukuran Kompleksitas menyebabkan ukuran data menjadi besar sehingga membutuhkan media penyimpanan yang besar pula. - Biaya Biaya yang dibutuhkan untuk implementasi DBMS serta pemeliharaannya tidak sedikit. - Biaya tambahan hardware Biaya hardware tambahan pengimplementasian DBMS tergolong besar. untuk 26 - Biaya konversi Biaya untuk DBMS, tambahan hardware dari yang lama menuju implementasi baru (konversi) besar. - Performa Secara umum memang baik tetapi dibuutuhkan berbagai aplikasi untuk mendukungnya. - Dampak kegagalan Pemusatan sumber data untuk semua pengguna yang tersedia pada DBMS dapat menyebabkan kegagalan yang besar apabila pengelolaannya tidak tepat. 2.8 Database Lifecycle Didalam merancang basis data, diperlukan perencanaan dan desain yang sempurna untuk menjadi landasan dalam pembuatan basis data. Perencanaan dan desain yang bagus akan menghasilkan basis data yang bagus pula. Pada Aplikasi Basis Data diperlukan acuan untuk melakukan perancangan tersebut. Acuan yang dimaksud tersebut adalah Siklus Hidup Aplikasi Basis Data atau dikenal dengan istilah Database Application Lifecycle. 27 Menurut Connolly (2010, p313), Database Lifecycle adalah komponen dasar didalam sistem informasi suatu organisasi yang bertujuan untuk merencanakan dan merancang basis data dari tingkatan awal sampai akhir. Jadi, Siklus Hidup Aplikasi Basis Data atau dikenal dengan istilah Database Lifecycle adalah siklus hidup yang menggambarkan tahapan-tahapan di dalam melakukan perancangan apliakasi basis data yang baik. Untuk mengetahui tahapan-tahapan yang ada pada Siklus Hidup Aplikasi Basis Data (Database Lifecylce) dapat dilihat pada gambar berikut ini : Gambar 2.6 Database Lifecylce (Sumber : Connolly, 2010, p314) 28 2.8.1 Tahapan Database Lifecycle Menurut Connolly (2010, p315) tingkatan siklus hidup aplikasi basis data terdiri atas : - Database Planning Merencanakan bagaimana basis data dibuat. - System Definition Mendefinisikan ruang lingkup dan batasan sistem. - Requirements Collection and Analysis Mengumpulkan dan menganalisis kebutuhan untuk sistem basis data yang baru. - Database Design Merancang basis data, konseptual, logikal, fisikal. - DBMS Selection Pemilihan DBMS yang tepat sesuai dengan kebutuhan. - Application Design Merancang antar muka program aplikasi serta proses basis data. - Prototyping Membangun pemodelan suatu pekerjaan sistem yang baru agar sesuai dengan yang diinginkan 29 - Implementation Membuat aplikasi basis data secara fisik berserta prorgram aplikasinya. - Data Conversion & Loading Memuat data dari sistem yang lama menuju sistem yang baru kemudian dilakukan konversi. - Testing Menguji sistem basis data agar valid dan sesuai dengan kebutuhan persyaratan yang digunakan oleh pengguna. - Operational & Maintenance Ketika sistem basis data diimplementasikan sepenuhnya, maka dilakukan pengawasan dan pemeliharaan sehingga kebutuhan basis data sesuai dengan tingkatan siklus hidup. 2.8.2 Database Planning Di menyatakan, dalam bukunya, untuk Connolly merencanakan (2010, basis data p313) harus terintegrasi dengan seluruh strategi SI yang ada pada organisasi. Ada 3 (tiga) masalah memformulasikan strategi SI, diantaranya : utama dalam 30 - Mengidentifikasi rencana perusahaan dan tujuannya untuk disesuaikan dengan strategi sistem informasi. - Mengevaluasi sistem informasi yang ada dengan mengamati kelemahan dan kekurangannya. - Penilaian terhadap kesempatan IT untuk mencapai keunggulan kompetitif. 2.9 Database Language Seperti halnya bahasa pemrograman, basis data memiliki bahasa tersendiri. Database Language adalah bahasa yang digunakan dalam membuat ataupun mengelola basis data. Menurut Connolly (2010, p91), Database Language terdiri atas 2 (dua) bagian yaitu: - Data Definition Language (DDL) - Data Manipulation Language (DML) Bahasa tersebut biasa disebut dengan data sublanguages karena tidak bisa membangun semua kebutuhan komputer, seperti memberikan pernyataan kondisi atau perulangan yang mana hal tersebut difasilitasi pada bahasa pemrograman tingkat tinggi (fortran, pascal, C, C#, Java). Dalam hal ini bahasa pemrograman tingkat tinggi biasa disebut host language. Jadi, bahasa pemrograman adalah bahasa yang digunakan dalam membuat ataupun mengelola sistem basis data. Selain itu 31 juga dapat menghubungkan pada platform program aplikasi sehingga dapat memproses input dan suatu perintah serta menghasilkan keluaran yang baik. 2.9.1 Data Definition Language Sebuah mendefinisikan bahasa data yang disebut juga digunakan Data untuk Definition Language. Umumnya sintaks Create adalah bahasa yang digunakan untuk mendefinisikan data. Di dalam bukunya, Connolly (2010, p92) menyatakan bahwa Data Definition Language adalah bahasa yang memperbolehkan Database Administrator (DBA) atau pengguna untuk mendeskripsikan dan menamai entitas, atribut, dan hubungan yang dibutuhkan untuk aplikasi bersamaan degan asosiasi integritas dan batasan keamanan lainnya. Pada level teoritikal, kita dapat mendefinisikan DDL yang berbeda pada setiap skema yang ada pada threelevel architecture. Dari hasil kompilasi pernyataan DDL adalah sebuah tabel yang tersimpan dalam file khusus yang dikumpulkan dan dikenal dengan System Catalog. System Catalog mengintegrasikan metadata dimana data yang mendeskripsikan objek pada basis data dan memudahkannya untuk mengakses dan memanipulasi objek 32 tersebut. Metadata mengandung definisi dari record data item dan objek lainnya yang menarik bagi pengguna dan dibutuhkan oleh DBMS. Data digunakan Dictionary untuk dan Data mendeskripsikan Directory System juga Catalog walaupun penggunaan Data Dictionary biasanya mengacu pada Sistem Perangkat Lunak secara umum daripada catalog untuk DBMS. 2.9.2 Data Manipulation Language Untuk memanipulasi data dibutuhkan bahasa yang dimengerti oleh data tersebut. Data Manipulation Language menyediakan sintaks dimana pengguna dapat memanipulasi data yang ada. Contoh sintaks yang sering digunakan adalah Select, Update, Insert, dan Delete. Di dalam bukunya, Connolly (2010, p92) menjelaskan bahwa Data Manipulation Language adalah suatu bahasa yang menyediakan kumpulan operasi untuk mendukung manipulasi basic data pada data yang ada di basis data. DML terbagi ke dalam 2 (dua) jenis, yaitu sebagai berikut : 33 - Procedural DML Bahasa yang memperbolehkan pengguna untuk memberitahukan pengguna mengenai data apa saja yang dibutuhkan dan bagaimana mengambil data tersebut. - Nonprocedural DML Bahasa yang memperbolehkan pengguna untuk menyatakan data apa yang dibutuhkan dibandingkan dengan bagaimana untuk mengambilnya. Di dalam pengelolaan basis data yerdapat operasi-operasi untuk Manipulasi Data. Operasi-operasi tersebut terdiri atas : - Insertion Insertion adalah memasukkan data baru ke dalam basis data. - Modification Modification adalah memodifikasi data yang tersimpan di dalam basis data. - Retrieval Retrieval adalah pengambilan data yang terkandung di dalam basis data. - Delete Delete adalah menghapuskan data dari basis data. 34 2.10 Kepegawaian Menurut Kavanagh dan Thite (2010, p48) Sistem kepegawaian adalah suatu sistem atau cara pengelolaan dalam bidang kepegawaian yang menyangkut semua aspek yang ada dalam sistem kepegawaian mulai dari cara penerimaan, pengangkatan, kenaikan golongan, penggajian pegawai, dan sebagainya. 2.10.1 Absensi Menurut Hasan Alwi (2007). Absensi adalah suatu pendataan kehadiran, bagian dari pelaporan aktifitas suatu institusi, atau komponen istitusi itu sendiri yang berisi datadata kehadiran yang disusun dan diatur sedemikian rupa sehingga mudah untuk dicari dan dipergunakan apabila sewaktu-waktu diperlukan oleh pihak yang berkepentingan. 2.10.2 Gaji Gaji adalah suatu hal penting bagi setiap karyawan yang bekerja dalam suatu perusahaan, karena dengan gaji yang diperoleh seseorang dapat memenuhi kebutuhan hidupnya. Adapun pengertian gaji menurut Komaruddin(2007:164) : “Gaji merupakan salah satu unsur penting yang dapat mempengaruhi kinerja karyawan, sebab gaji adalah alat untuk memenuhi berbagai kebutuhan 35 pegawai, sehingga dengan gaji yang diberikan pegawai akan termotivasi untuk bekerja lebih giat”. 2.10.3 Cuti Menurut Kavanagh dan Thite (2010, p348) Cuti adalah ketidakhadiran sementara, dimana keadaan pegawai tidak masuk kerja yang telah diberikan izin dalam jangka waktu tertentu. Jenis cuti yang merupakan hak dari setiap pegawai yaitu : 2.11 - Cuti tahunan - Izin kepentingan keluarga - Cuti melahirkan - Cuti menjalankan ibadah agama - Cuti diluar tanggungan perusahaan User Interface (UI) Bagi pengguna aplikasi, antarmuka sangat membantu user dalam menyelesaikan pekerjaannya, seperti yang ditegaskan oleh Stair ( 2010, p634) user interface adalah bagian dari sistem operasi yang memungkinkan pengguna untuk mengakses dan memberikan perintah ke sistem. 36 2.12 Internet Menurut Simaramata (2010, p50) Internet pertama kali digunakan sebagai proyek penelitian yang ditemukan oleh Advanced Research Project Agency (ARPA) Departement of Defense (DOD) di Amerika Serikat. Menurut Yuhefizal ( 2008, p2 ) Internet adalah rangkaian hubungan jaringan komputer yang dapat diaskses secara umum diseluruh dunia, yang mengirimkan data dalam bentuk paket data berdasarkan standar Internet Protocol ( IP ). Lebih dalam lagi, Internet adalah kumpulan jaringan dari jaringan-jaringan komputer dunia yang terdiri dari jutaan unit-unit kecil, seperti jaringan pendidikan, jaringan bisnis, jaringan pemerintahan dan lain-lain, yang secara bersama menyediakan layanan informasi seperti email, online chat, transfer file dan saling keterhubungan (linked) antara satu halaman web dengan sumber halaman web yang lainnya. 2.12.1 World Wide Web ( www ) Menurut Mooduto dan Hidayat ( 2009, p1) mengatakan sebuah sistem penyebaran informasi melalui internet. Informasi yang dikirimkan dapat berupa teks, suara ( audio ), animasi, gambar, dan bahkan dalam format video yang dapat diakses melalui sebuah software yang disebut browser, seperti internet explorer, mozilla firefox, opera, dan lain-lain. 37 2.12.2 Pengertian Website Menurut Mooduto dan Hidayat (2009, p2) mengatakan website adalah keseluruhan halaman-halaman web yang terdapat dalam sebuah domain yang mengandung informasi. Sebuah website biasanya dibangun atas banyak halaman web yang saling berhubungan, hubungan antara satu halaman web dengan halaman web yang lainnya disebut dengan hyperlink, sedangkan teks yang dijadikan media penghubung disebut hypertext. 2.13 PHP Hypertext Preprocessor (PHP) Menurut Welling dan Thomson (2008, p4) PHP ( PHP Hypertext Preprocessor) adalah bahasa pemrograman berbasis server yang dirancang khusus untuk web. Dalam halaman HTML, dpaat dimasukan kode PHP yang akan dieksekusi setiap kali halaman web tersebut diaskses. Kode PHP ini akan diterjemahkan oleh web server dan akan dijalankan bersamaan dengan HTML atau output lainnya, yang akan dilihat oleh pengunjung situs web. Beberapa kelebihan PHP dibandingkan dengan bahasa pemrograman sejenis seperti Perl, Microsoft Active Server Pages (ASP), Java Server Pages (JSP), dan Allaire Cold Fusion adalah: • Kemampuan yang tinggi. 38 • Kemampuan untuk dapat terhubung dengan banyak sistem basis data, seperti : MySQL, PostgreSQL, mSQL, Oracle, dbm, filePro, Hyperwave Informix, dan Interbase. • Tidak dibutuhkan biaya untuk mendapatkan PHP. • Mudah dipelajari dan digunakan, karena PHP dibuat berdasarkan bahasa pemrograman dasar, yaitu bahasa C dan Perl. • Dapat berjalan pada berbagai sistem operasi, seperti Linux, Solaris, dan berbagai versi Microsoft Windows. 2.14 XAMPP Menurut Anonymous1 (2010) XAMPP adalah perangkat yang memudahkan untuk menginstall distribusi Apache yang berisi MySQL, PHP, dan Perl. XAMPP benar-benar sangat mudah untuk menginstall dan menggunakannya, dengan cara men-download, ekstrak, dan mulai.