BAB 2 LANDASAN TEORI 2.1 Teori Umum 2.1.1 Data Data adalah fakta-fakta tentang segala sesuatu di dunia nyata yang dapat direkam dan disimpan dalam media komputer (Adi Nugroho, 2011, p5). Sebagai contoh, pada basis data mahasiswa, data adalah NIM, nama mahasiswa yang bersangkutan, tanggal lahir, alamat, serta nomor teleponnya. 2.1.2 Basis Data (Database) Basis data adalah suatu koleksi data yang secara logika berhubungan satu sama lain, dan uraian dari data tersebut dirancang untuk memenuhi kebutuhan infomasi dari sebuah organisasi (Connoly dan Begg, 2010, p65). Sedangkan menurut Adi Nugroho (2011, p5), basis data sebagai kumpulan terorganisasi dari data-data yang berhubungan sedemikian rupa sehingga mudah disimpan, dimanipulasi, serta dipanggil oleh pengguna. 2.1.3 Database Management System (DBMS) Database Management System merupakan suatu sistem perangkat lunak yang memungkinkan bagi user untuk dapat mendefinisikan, memelihara, menciptakan dan mengontrol akses ke dalam database (Conolly dan Begg, 2010, p66). 6 7 2.1.3.1 Komponen DBMS Menurut Conolly dan Begg (2010, p68-p71), komponen DBMS dapat dibedakan menjadi 5, yaitu : 1. Hardware atau perangkat keras Perangkat keras dapat terdiri dari sebuah personal komputer, ke mainframe tunggal, dan ke jaringan komputer. Bagian khusus perangkat keras bergantung pada kebutuhan organisasi dan juga penggunaan DBMS. 2. Software atau perangkat lunak Komponen perangkat luntak terdiri dari software DBMS itu sendiri dan program aplikasi, bersama dengan sistem operasi, termasuk perangkat lunak jaringan dan apabila DBMS tersebut digunakan melalui jaringan. 3. Data Komponen penting dalam linkungan DBMS berasal dari gambaran end-user, yaitu data. Data berperan sebagai jembatan antara komponen mesin dan komponen manusia. 4. Prosedur Prosedur menunjukkan instruksi dan peraturan yang memperngaruhi desain dan penggunaan basis data. Pengguna sistem dan karyawan yang mengatur sistem basis data membutuhkan prosedur dokumentasi tentang bagaimana menggunakan atau menjalankan sistem. 8 5. Manusia Komponen terakhir yang berhubungan langsung dengan sistem. Manusia yang berhubungan langsung dengan sistem dapat dikelompokkan menjadi 4 macam : Database Administrator, Database Designers, Application Developers, and end-users. a. Database Administrator, adalah orang atau sekelompok orang yang bertanggung jawab kepada manajemen dan pengendalian database. Data Administrator atau biasa dikenal sebagai DA bertanggung jawab untuk manajemen sumber daya yang mencakup perencanaan database, pengembangan, standar pemeliharaan, kebijakan, prosedur, dan desain database secara konseptual. Sedangkan Database Administrator atau DBA bertanggung jawab untuk realisasi fisik database yang mencakup desain fisik database, implementasi, keamanan, integritas pengendalian, backup, restore, pemeliharaan sistem operasional dan memastikan bahwa sistem tersebut dapat dipakai dengan baik. b. Database Designer adalah dibagi menjadi 2 tipe yaitu logical database designer dan physical database designer. Logical database designer bertugas untuk mengidentifikasi entitas dan atribut data, hubungan antar data, dan kendala pada saat data dimasukkan ke dalam database. Database Designer juga dituntut untuk mengerti proses bisnisnya.Physical database designer bertugas merealisasikan desain database logikal menjadi fisikal. 9 c. Application Developers atau dikenal juga sebagai Programmer merupakan ahli komputer yang befungsi untuk mengembangkan program-program aplikasi yang diperlukan dalam manajemen database. d. End User atau client dari databsae. End-user bisa diklasifikasikan berdasarkan cara mereka menggunakan sistem: Naïve User : secara umum tidak peduli terhadap DBMS. Sophisticated User : pengguna sudah mengenal struktur dari database dan fasilitas yang diberikan oleh DBMS. 2.1.3.2 Fungsi DBMS Menurut Connoly and Begg (2010, p99) fungsi dari DBMS adalah: 1. Penyimpanan, pengambilan dan perubahan data DBMS harus menyediakan kemampuan kepada pengguna untuk menyimpan, menerima, dan meng-update data di dalam database. 2. Katalog yang dapat diakses oleh pengguna DBMS harus menyediakan katalog yang berisikan deskripsi data item dan dapat diakses oleh user. 3. Dukungan transaksi DBMS harus menyediakan sebuah mekanisme yang menjamin seluruh perubahan yang berhubungan dengan sebuah transaksi dapat dilakukan ataupun tidak dapat dilakukan. 10 4. Layanan kontrol concurrency DBMS harus memiliki sebuah mekanisma menjamin database dapat diupdate ketika banyak user meng-update database secara bersamaan. 5. Layanan recovery DBMS harus menyediakan sebuah mekanisma untuk memperbaiki basis data yang apabila terjadi kesalahan. 6. Layananan kepemilikan (Authorization Service) DBMS harus menyediakan sebuah mekanisma yang menjamin bahwa hanya pengguna yang memiliki otorisasi yang dapat mengakses database. 7. Dukungan komunikasi data DBMS harus bisa berintegrasi dengan software komunikasi. 8. Layanan integrasi DBMS harus menyediakan sebuah sarana yang menjamin data di dalam database dan perubahan data di dalam database mengikuti aturan – aturan tertentu. 9. Layanan untuk peningkatan independensi data DMBS harus memiliki fasilitas untuk mendukung ketidaktergantungan program terhadap struktur aktual dari database. 10. Layanan utilitas 11 DBMS harus menyediakan serangkian layanan seperti program analisis statistik, pengawasan fasilitas, fasilitas reorganisasi indeks, dan lain-lain. 2.1.4 Structure Query Language (SQL) Menurut Yakub (2008, p99), SQL adalah suatu bahasa komputer yang mengikuti standar American National Standard Institute (ANSI) yang digunakan untuk mengakses data atau meng-update data pada suatu database. Secara umum SQL dibagi menjadi 3 (tiga) bagian yaitu : Data Definition Language (DDL), Data Manipulation Language (DML) dan Data Control Language (DCL) 2.1.4.1 Data Definition Language (DDL) Menurut Conolly dan Begg (2010, p92), DDL (Data Definition Language) adalah bahasa yang memungkinkan DBA (Database Administrator) atau pengguna untuk mendeskripsi nama entitas dan hubungan atribut yang diperlukan untuk aplikasi, bersama-sama dengan yang terkait kendala integrity dan keamanan. DDL digunakan untuk mendefinisikan skema. 2.1.4.2 Data Manipulation Language (DML) Bahasa yang memungkinkan pengguna untuk mengakses atau memanipulasi data dalam sistem basis data yang bertipe relasional 12 sering disebut data manipulation language, pandangan ini menurut Adi Nugroho (2011, p17). Pada dasarnya, ada dua jenis DML, yaitu : 1. DML Prosedural DML prosedural, menspesifikasikan yang data menghendaki yang diperlukan pengguna untuk dan untuk cara mendapatkan data itu. Hal ini dapat dilakukan dengan bahasabahasa pemrograman yang mampu mengakses basis data (misalnya, bahasa C/C++ atau Java). 2. DML Deklaratif DML Deklaratif (DML Nonprosedural), yang menghendaki pengguna untuk menspesifikasikan data yang diperlukan tanpa harus menspesifikasikan cara untuk mendapatkannya. 2.1.4.3 Data Control Language (DCL) Menurut Yakub (2008, p114), DCL merupakan kumpulan perintah yang berisi untuk mengendalikan pengaksesan data. DCL digunakan untuk menangani masalah keamanan dalam database server. 2.1.5 Database Lifecycle Sistem informasi adalah sebuah sumber yang mengijinkan untuk terjadinya pengoleksian, manajemen, kontrol, dan penyebaran informasi dalam organisasi, hal ini menurut pandangan Conolly dan Begg (2010, p312). Sebuah sistem basis data memiliki komponen fundamental dari organisasi berskala 13 besar dan memiliki cakupan sistem informasi yang sangat luas. Antara siklus sistem informasi dan siklus basis data memiliki hubungan yang erat. Berikut gambar Database Lifecycle : 14 Gambar 2.1 Database Application Lifecycle (Sumber : Conolly dan Begg, 2010, p314) 15 2.1.5.1 Database Planning Menurut Conolly dan Begg (2010, p313-p316), perencanaan basis data adalah pengelolaan aktifitas yang memungkinkan tahapan aplikasi basis data tercapai dengan efektir dan efisien. Terdapat tiga persoalan utama yang menyangkut perumusan sebuah streategi sistem informasi, yaitu : 1. Mengidentifikasi rencana dan tujuan perusahaan kemudian menentukan kebutuhan sistem informasi. 2. Mengevaluasi sistem informasi yang sudah ada untuk menentukan kekuatan dan kelemahan yang ada. 3. Menilai dari kesempatan teknologi informasi yang menghasilkan kekuatan yang kompetitif. Langkah penting dalam tahap ini adalah mendefinisikan secara jelas pernyataan misi untuk proyek basis data. Pernyataan tersebut mendefinisikan tujuan utama dari aplikasi basis data. Bila pernyataan tersebut selesai, maka langkah selanjutnya adalah mendefinisikan sasarannya. Pernyataan dan sasaran ini perlu didukung oleh informasiinformasi tambahan yang menentukan pekerjaan apa saja yang harus diselesaikan, sumber-sumber yang mendukungnya, dan biaya yang harus dikeluarkan. 2.1.5.2 System Definition Menurut Conolly dan Begg (2010, p316), definisi sistem basis data adalah menggambarkan jangkauan dan batasan dari aplikasi basis 16 data dan pandangan utama para pengguna. Sebelum merancang suatu aplikasi basis data, penting untuk terlebih dahulu mengidentifikasikan batasan-batasan dari sistem yang sedang diteliti dan bagaimana keterkaitannya dengan bagian lain dari sistem informasi organisasi. 2.1.5.3 Requirment Collection and Analysis Analisis dan pengumpulan kebutuhan adalah proses dari analisis dan pengumpulan informasi tentang bagaimana organisasi yang akan dibuat aplikasi basis data dan menggunakan informasi ini untuk mengenali kebutuhan pengguna dari sistem. (Connolly dan Begg, 2010, p316-p319) Beberapa teknik atau cara untuk mendapatkan informasi dengan teknik fact finding. Fact finding adalah proses formal dengan menggunakan teknik seperti wawancara dan kuisioner untuk mengumpulkan fakta tentang sistem dan kebutuhan. 2.1.5.4 Database Design Menurut Connolly dan Begg (2010, p320-p325), perancangan basis data adalah proses pembuatan sebuah rancangan untuk sebuah basis data yang mendukung operasi dan tujuan dari perusahaan. Terdapat dua pendekatan pada perancangan basis data, yaitu bottom-up dan top-down. Pendekatan bottom-up dimulai dari tingkat yang paling dasar atribut (yaitu, properti-properti entitas dan hubungannya), yang melalui analisis hubungan ant atribut akan 17 dikelompokkan ke dalam relasi yang mewakili tipe dari entitas dan hubungan diantara entitas tersebut. Pendekatan bottom-up lebih kepada perancangan basis data yang sederhana dengan sejumlah atribut yang relatif kecil. Pendekatan top-down lebih kepada perancangan basis data yang lebih kompleks. Pendekatan ini dimulai dengan pengembangan model data yang mengandung beberapa entitas tingkat atas dan hubungannya, dan kemudian akan dilakukan berturut-turut perbaikan top-down untuk mengidentifikasi tingkat bawah entitas, hubungannya, dan entitas yang terkait. Perancangan basis data dibagi menjadi tiga tahapan, yaitu : a. Conceptual Database Design Merupakan proses membangun model informasi yang digunakan organisasi, bebas dari semua pertimbangan fisik (Conolly dan Begg, 2010, p322). Pertimbangan fisik yang dimaksud meliputi DBMS yang akan digunakan, program aplikasi, bahasa pemrograman, platform perangkat keras, unjuk kerja, dan pertimbangan fisik lainnya. Fungsi dari tahap ini adalah untuk membuat representasi konseptual dari basis data, termasuk identifikasi entitas-entitas yang penting, relasi dan atribut. Berikut adalah langkah-langkah dalam metodologi perancangan basis data konseptual : 1. Mengidentifikasi tipe entitas 18 Langkah ini bertujuan untuk mengidentifikasi tipe entitas yang utama yang dibutuhkan pengguna. Dalam membangun suatu model data konseptual lokal maka perlu mendefinisikan objek utama dimana pengguna memang membutuhkannya. Salah satu metode untuk mengidentifikasi tipe entitaas yang utama adalah dengan mengidentifikasi kata benda atau frase kata benda yang telat disebutkan oleh pengguna. Sebagai alamat_karyawan. contoh Anda : dapat NIK, Nama_karyawan, mengelompokkan NIK, Nama_karyawan, alamat_karyawan dengan sebuah objek atau entitas yang disebut Pegawai. 2. Mengidentifikasi tipe relasi Tujuan dari langkah ini adalah untuk mengidentifikasi relasi yang penting antara berbagai tipe entitas yang telah diidentifikasikan. Biasanya, relasi diidentifikasi dengan menggunakan kata kerja atau frase kata kerja. Relasi yang paling utama adalah relasi biner, artinya relasi antar entitas yang persis antara dua entitas saja. 3. Mengidentifikasi dan menghubungkan atribut setiap entitas Tujuan dari langkah ini adalah untuk mengindentifikasi dan mengasosiasikan atribut dari entitas atau tipe relasi. a) Simple / Composite Attributes Apakah atribut tersebut itu simple atau composite b) Single / Multi-values Attributes 19 Apakah atribut tersebut mempunyai satu atau lebih nilai c) Derived Attributes Apakah atribut yang nilainya tergantung dengan nilai atribut yang lain 4. Menentukan atribut domain Tujuan dari langkah ini adalah untuk menentukan domain dari atribut yang ada di dalam suatu model data konseptual. 5. Menentukan atribut candidate dan primary key Tujuan dari langkah ini adalah untuk mengidentifikasi candidate key dari setiap tipe entitas. Jika terdapat lebih dari satu candidate key, pilihlah salah satunya untuk menjadi primary key. Petunjuk untuk membantu dalam penyeksian candidate key : Merupakan candidate key dengan jumlah set paling sedikit Merupakan candidate key yang nilainya jarang sekali berubah Merupakan candidate key dengan jumlah karakter paling sedikit Merupakan candidate key dengan jumlah paling sedikit dari nilai maksimumnya (untuk tipe atribut dengan tipe numerik) Merupakan candidate key yang paling mudah digunakan dari sudut pandang pengguna. 20 6. Mempertimbangkan penggunaan dari perbaikan konsep model (langkah pilihan) Tujuan dari langkah ini adalah untuk mempertimbangkan penggunaan enchaned modeling concepts seperti specialization, generalization, aggregation, dan composition. 7. Mengecek model redudansi Tujuan dari langkah ini adalah untuk memeriksa apakah ada redudansi dalam model basis data. Terdapat 3 cara pada langkah ini : a) Menguji kembali hubungan one-to-one Tujuannya tidak ada dua atau lebih tipe entitas yang merepresentasikan objek yang sama dalam perusahaan b) Menghilangkan relasi redudansi Sebuah relasi dinyatakan redundan jika informasi yang sama dapat diperoleh melalui relasi yang lain. Dalam membangun model data sebaiknya seminimal mungkin, redudant relationship yang tidak perlu dapat dihilangkan. c) Berdasarkan dimensi waktu Dimensi waktu dari suatu hubungan adalah penting ketika menilai redudansi. 8. Memvalidasi model data konseptual lokal terhadap transaksi pengguna 21 Bertujuan untuk memastikan model data konseptual mendukung transaksi yang dibutuhkan oleh pandangan pengguna. Dua pendekatan untuk memastikan model data konseptual mendukung kebutuhan transaksi : Menggambarkan transaksi Memeriksa semua informasi (entitas, relasi, dan atributnya) yang dibutuhkan oleh setiap transaksi yang disediakan oleh model. Menggunakan transaction pathways Memvalidasi model data terhadap kebutuhan transaksi dengan menggambar diagram yang mewakili pathways yang diambil oleh setiap transaksi secara langsung pada ER diagram. 9. Meninjau ulang model data konseptual dengan user Tujuan dari langkah ini adalah untuk melihat kembali model data konseptual bersama user untuk memastikan bahwa model yang ada sudah sesuai dengan yang diminta. b. Logical database design Proses membangun sebuah model informasi yang diperoleh dari sebuah organisasi berdasarkan model data yang khusus namun terbebas dari DBMS tertentu dan pertimbangan fisik lainnya. Dalam logical database design, model data yang diperoleh dalam conceptual database design diubah dalam bentuk logical model 22 dimana data yang ada dipengaruhi oleh model data yang menjadi tujuan basis data. Hal ini dilakukan untuk menterjemahkan presentasi konseptual ke dalam bentuk struktur logic dalam basis data. Logical data model merupakan sumber informasi dalam merancang physical database. Logical database design memberikan sarana yang membantu para perancang dalam merancang physical database. Berikut adalah langkah-langkah dalam metodologi perancangan database logikal : 1. Membuat relasi untuk model data logikal Tujuan dari langkah ini adalah untuk membuat suatu relasi untuk model data logikal yang merepresentasikan suatu entitas, relasinya, dan juga atribut yang telah diidentifikasi. Anda juga mendeskripsikan bagaimana relasi diperoleh dari struktur model data antara lain : a. Strong entity type Untuk setiap entitas kuat dalam model data, buat sebuah tabel yang mencakup semua atribut dari entitas tersebut b. Weak entity type Untuk setiap entitas lemah dalam model data, buat sebuah tabel yang mencakup semua atribut dari entitas tersebut c. One-to-many (1:*) tipe relasi biner Untuk merepresentasikan relasi ini, kita mengirimkan copyan atribut primary dari entitas pada ‘one side’ ke dalam tabel 23 yang merepresentasikan entitas pada ‘many side’, untuk bertindak sebagai foreign key. d. One-to-one (1:1) tipe relasi biner Membuat relasi untuk merepresentasikan sebuah relasi 1:1 lebih rumit karena cardinality tidak dapat digunakan untuk membantu mengidentifikasikan entitas parent atau child dalam sebuah relasi. Kita mempertimbangkan cara membuat relasi untuk mewakili participation constraints : a) Mandatory participation di dua sisi b) Mandatory participation di satu sisi c) Optional Participation di dua sisi e. One-to-one (1:1) tipe relasi recursive f. Tipe relasi superclass / subclass g. Many-to-many tipe relasi binary h. Tipe relasi kompleks i. Atribut-atribut multi-valued 2. Validasi relasi menggunakan normalisasi Menurut Conolly dan Begg (2010, p501) normalisasi bertujuan untuk memastikan bahwa himpunan relasi memiliki jumlah minimum namun cukup untuk atribut yang diperlukan untuk mendukung kebutuhan data perusahaan. 3. Validasi relasi terhadap transaksi user 24 Tujuan dari langkah ini adalah untuk memastikan bahwa relasi di dalam model data logikal mendukung transaksi yang diminta user. 4. Menentukan batasan-batasan integritas Tujuan dari langkah ini adalah untuk mendefinisikan ruang lingkup integritas yang diperlihatkan kepada user. Dalam hal ini ada lima tipe dari ruang lingkup integritas, antara lain : a) Required data Beberapa atribut harus selalu berisi nilai yang benar (valid), tidak dapat bernilai null. Constraint ini harus diidentifikasikan pada saat mendokumentasikan atributatribut pada kamus data. b) Attribute domain constraint Setiap atribut memiliki domain, yaitu himpunan nilai yang dibolehkan (Connolly, 2010, p503). Constraint ini harus diidentifikasikan pada saat pemilihan attribute domain untuk data model. c) Entity integrity Primary key dari sebuah entitas tidak boleh bernilai null. Constraint ini harus dipertimbangkan pada saat penentuan primary key bagi setiap tipe entitas. d) Referential integrity 25 Jika suatu foreign key memiliki nilai, nama nilai tersebut harus menunjuk ke sebuah baris yang ada pada relasi ‘parent’. e) Enterprise constraint Kegiatan update entitas dibatasi oleh peraturan atau kebijakan organisasi yang mengatur transaksi yang diwakilkan oleh update yang dilakukan. 5. Meninjau ulang model data logikal dengan user Tujuan dari langkah ini adalah untuk meninjau kembali model data logikal dengan pengguna untuk memastikan bahwa model benar-benar mewakili kebutuhan data perusahaan. 6. Menggabungkan model data logikal ke dalam model global (langkah pilihan) Tujuan dari langkah ini adalah menggabungkan model data logikal lokal kedalam sebuah model data logikal global yang mewakili seubah sudut panjang user sebuah database. 7. Mengecek perkembangan yang akan datang Tujuan dari langkah ini adalah untuk menentukan apakah ada perubahan signifikan dimasa yang akan datang dan untuk menilai apakah model data logikal bisa mengakomodasi perubahan. 26 c. Physical database design Proses pembuatan deskripsi dari suatu implementasi database pada media penyimpanan (secondary storage), hal ini mendeskripsikan hubungan utama, organisasi file, dan indeks yang digunakan untuk mencapai efisiensi akses ke dalam data, dan hubungan integrity constraints dan hal yang berkaitan dengan keamanan. Berikut adalah langkah-langkah dalam metodologi perancangan database fisikal : 1. Menterjemahkan model data logikal a. Mendesain base relations Tujuan dari langkah ini adalah ntuk menentukan bagaimana merepresentasikan relasi dasar yang diidentifikasi ke dalam model data logikal di target DBMS. b. Mendesain representasi dari derived data Tujuan dari langkah ini adalah untuk memutuskan bagaimana merepresentasikan derived data ke dalam model data logikal di target DBMS. c. Mendesain general constraints Tujuan dari langkah ini adalah untuk mendesain general constraints ke target DBMS. 2. Mendesain file organisasi dan indeks Tujuan dari langkah ini adalah untuk menentukan organisasi file yang optimal untuk menyimpan hubungan dasar 27 dan indeks yang diperlukan untuk mencapai kinerja yang dapat diterima, yaitu cara di mana relasi dan tupel berkerja pada penyimpanan sekunder. a. Menganalisis transaksi Untuk mengetahui fungsionalitas transaksi yang akan berjalan di database dan menganalisis transaksi yang penting b. Memilih file organisasi Untuk menentukan file organisasi yang efisien untuk setiap relasi dasar c. Memilih indeks Untuk menentukan apakah penambahan indeks akan meningkatkan performa sistem. Indeks digunakan untuk mempercepat proses pencarian. Namun, untuk relasi-relasi kecil sebaiknya tidak dibuat indeksnya karena hanya akan menambah kapasitas penyimpanan. d. Memperkirakan kebutuhan kapasitas disk Untuk menghitung jumlah kapasitas disk yang dibutuhkan oleh database. 3. Mendesain user view Tujuan dari langkah ini adalah untuk mendesain user view yang telah diidentifikasikan selama pengumpulan dan analisis kebutuhan. 4. Mendesain sistem keamanan 28 Tujuan dari langkah ini adalah untuk mendesain keamanan database yang dispesifikasikan oleh user. Relational DBMS menyediakan dua tipe keamanan database, yaitu system security yang mencakup akses dan penggunaan database pada level sistem seperti penggunaan username dan password, dan data security mencakup akses dan penggunaan database objek. 5. Mempertimbangkan pengenalan tentang pengendalian redudansi Tujuan dari langkah ini adalah menentukan apakah memecahkan redudansi dengan normalisasi akan meningkatkan performa sistem. 6. Memonitor dan mengatur sistem operasional Tujuan dari langkah ini adalah mengawasi sistem operasional dan meningkatkan performa sistem untuk memperbaiki desain yang tidak tepat. 2.1.5.5 DBMS Selection Menurut Conolly dan Begg (2010, p325-p326), pemilihan DBMS adalah memilih DBMS yang sesuai untuk mendukung aplikasi basis data. Pemilihan DBMS dilakukan antara tahapan perancangan basis data logikal dan perancangan basis data konseptual. Tujuannya untuk kecakupan sekarang dan kebutuhan masa mendatang pada organisasi, membuat keseimbangan biaya termasuk pembelian produk DBMS, piranti lunak untuk mendukung aplikasi 29 basis data, biaya yang berhubungan dengan perubahan dan pelatihan pegawai. Pada berikut ini adalah langkah-langkah utama dalam pemilihan DBMS yaitu: 1. Mengidentifikasi kerangka acuan studi. 2. Memfokuskan kedua atau tiga produk. 3. Mengevaluasi produk-produk. 4. Merekomendasikan pemilihan dan menghasilkan laporan. 2.1.5.6 Application Design Menurut Conolly dan Begg (2010, p330-p331), perancangan aplikasi adalah perancangan user interface dan program aplikasi yang menggunakan serta memproses basis data. Terdapat dua aspek dalam perancangan aplikasi, yaitu : Perancangan transaksi. Perancangan antar muka (interface). 2.1.5.7 Prototyping Menurut Conolly dan Begg (2010, p333), prototipe adalah membangun sebuah model kerja dari suatu sistem basis data. Ada dua jenis prototyping yang sering digunakan, yaitu : 1. Requirment prototyping adalah prototipe yang digunakan untuk menentukan persyaratan dari sebuah proposal sistem basis data. Apabila proposalnya telah dibuat maka prototipenya dapat dihapus. 30 2. Evolutionary prototyping adalah digunakan untuk tujuan yang sama dengan requirment prototyping, namun terdapat perbedaan yaitu prototipenya tidak dibuat melaikan dikembangkan menjadi sistem basis data yang bekerja. 2.1.5.8 Implementation Menurut Connolly dan Begg (2010, p333-p334), implementasi merupakan realisasi fisikal dari basis data dan perancangan aplikasi. Implementasi basis data 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. User View juga diimplementasikan pada tahap ini. Sementara implementasi aplikasi perangkat lunak adalah bentuk dari transaksi basis data yang diimplementasikan dengan menggunakan Data Manipulation Language (DML). Biasanya sudah terdapat dalam bahasa pemrograman. 2.1.5.9 Data Conversion and Loading Menurut Connolly dan Begg (2010, p334), konversi dan pemuatan data adalah proses memindahkan data yang sudah ada ke dalam bais data yang baru dan mengubah aplikasi yang ada untuk dapat berfungsi dengan basis data yang baru. Tahap ini diperlukan saat sistem basi data yang baru menggantikan sistem yang lama. 31 2.1.5.10 Testing Menurut Connolly dan Begg (2010, p334), pengujian merupakan proses menjalankan program aplikasi dengan tujuan menemukan kesalahan-kesalahan. Sebelum suatu aplikasi program basis data dijalankan, perlu diadakan pengujian. Bila pengujian berjalan sukses, maka tidak akan menampakkan beberapa kegagalan yang ada pada program aplikasi dan juga pada struktur basis data. Tentunya pengguna sistem yang baru ini harus dilibatkan dalam pengujian. 2.1.5.11 Operational Maintenance Menurut Connolly dan Begg (2010, p335), pemeliharaan operasional merupakan proses mengamati dan memelihara sistem setelah dilakukannya instalasi. Aktivitas-aktivitas yang terlibat dalan tahap ini adalah : Mengamati performa dari sistem. Apabila performa jatuh di bawah tingkat yang dapat diterima, maka perbaikan atau pengorganisasian dari basis data perlu dilakukan. Memelihara dan memperbaharui aplikasi basis data (apabila dibutuhkan). Kebutuhan baru disatukan dengan aplikasi basis data. 2.1.6 Entity Relationship Modeling Menurut Conolly dan Begg (2010, p371), salah satu aspek yang sulit dalam perancangan database adalah kenyataan bahwa perancang, programmer, 32 dan pemakai akhir cenderung melihat data dengan cara yang berbeda. Untuk memastikan pemahaman secara ilmiah dari data dan bagaiman data digunakan oleh perusahaan dibutuhkan sebuah bentuk komunikasi yang non-teknis dan bebas dari segala ambiguitis. Konsep dasar dari entity relationship modeling menurut Conolly dan Begg (2010, p343-351), yaitu : 2.1.6.1 EntityType Tipe entitas adalah kelompok dari objek-objek dengan properti yang sama, yang mengidentifikasi oleh perusahaan seperti memiliki keberadaan yang tidak bergantung. Tipe entitas digambarkan dalam bentuk kotak yang di dalamnya terdapat nama dari entitas. Dalam Unified Modeling Language (UML), huruf pertama dari setiap entitas menggunakan huruf kapital. Setiap objek yang dapat diidentifikasi secara untik dari sebuah tipe entitas disebut entity occurrence. 2.1.6.2 Relationship Type Menurut Conolly dan Begg (2010, p374-p375), derajat dari tipe hubungan adalah jumlah tipe entitas yang ikut serta dalam hubungan. Entitas yang terkait dalam sebuah fakta tipe hubungan ditunjuk sebagai participants dalam hubungan. Jumlah participants dalam tipe hubungan disebut degree (derajat) dari hubungan tersebut. 1. Relasi biner : Sebuah hubungan yang memiliki derajat dua 2. Relasi ternary : Sebuah hubungan yang memiliki derajat tiga 33 3. Relasi quaternary : Sebuah hubungan yang memiliki derajat empat 2.1.6.3 Attribute Aribut adalah properti dari entitas atau relasi, menurut Conolly dan Begg (2010, p379). Atribut memiliki domain atribut sebagai batasan yang bisa diisi ke dalam atribut tersebut. Atribut memiliki beberapa bentuk : 1. Simple Attribute Adalah atribut yang terdiri dari satu komponen tunggal dengan keberadaan yang bebas. Simpel Atribut tidak bisa dibagi lagi ke dalam komponen yang lebih kecil. Contoh : NIM_MHS, NO_KTP (Conolly dan Begg, 2010, p379). 2. Composite Attribute Adalah sebuah atribut yang tersusun dari banyak komponen dan keberadaan yang bebas dari tiap-tiapnya. Dalam hal ini beberapa atribut dapat dipisahkan menjadi komponen yang lebih kecil lagi dengan keberadaan yang bebas dari tiap-tiapnya. Contohnya entiti kantor cabang dengan nilai (Alamat, Kode Cabang) bisa dipisah menjadi simpel atribut alamat dan kode cabang. 3. Single-valued Attribute dan Multi-Valued Attribute Menurut Conolly dan Begg (2010, p380), single value attribute adalah atribut yang hanya menyimpan nilai tunggal untuk suatu sifat dari entity. Sedangkan multi value attribute adalah atribut 34 yang bisa menyimpan nilai lebih dari satu untuk suatu sifat dari entity. Contohnya atribut telepon pada entity kantor cabang yang bisa memiliki lebih dari satu nomor telpon. 4. Derived Attribute Menurut Conolly dan Begg (2010, p380), derived attribute adalah atribut yang menunjukkan nilai yang diperoleh dari atribut yang berhubungan, tidak terlalu dibutuhkan dalam tipe entity yang sama. Atribut turunan mungkin juga menyangkut hubungan dari atribut pada tipe entity yang berbeda. 5. Keys Menurut Conolly dan Begg (2010, p381), Keys dibagi menjadi 3, yaitu : 1. Candidate Key Satu set minimal atribut yang mengidentifikasikan objek secara unik suatu kejadian spesifik dari entity. 2. Primary Key Candidate key yang terpilih karena mengidentifikasikan objek secara unik suatu kejadian spesifik dari entity. 3. Composite Key Kunci yang disusun berdasarkan lebih dari satu atribut. 2.1.6.4 Strong and Weak Entity Menurut Conolly dan Begg (2010, p383) entity terbagi 2 kelas yaitu: 35 1. Strong entity (Entitas kuat) adalah entitas yang tidak bergantung kepada entitas lain atau independen. 2. Weak entity (Entitas lemah) adalah entitas yang bergantung kepada entitas lain atau dependen. 2.1.6.5 Structural Constraints Menurut Conolly dan Begg (2010, p 385), batasan-batasan yang menggambarkan pembatasan pada relationship seperti yang ada pada “real world”. Contohnya seperti entity cabang harus mempunyai karyawan. Tipe utama dari batasan hubungan di dalam suatu relationship disebut multiplicity. Multiplicty adalah jumlah occurance yang mungkin terjadi pada sebuah tipe entitas yang berhubungan ke sebuah occurance dari sebuah tipe entitas lain dari suatu relationship. Relationship yang paling umum adalah binary relationship. Macam-macam binary relationship adalah : a. Hubungan one to one (1 : 1) Setiap relationship menggambarkan hubungan antara sebuah entiti occurance pada entitas yang satu dengan entity occurance pada entitas lainnya yang ikut serta dalam relationship tersebut. Hubungan 1 : 1 dapat terjadi bila setiap entitas pada himpunan entitas A berhubungan paling banyak satu entitas dengan satu entitas pada himpunan entitas B. Dan sebaliknya, 36 setiap entitas pada himpunan entitas B berhubungan paling banyak satu entitas dengan satu entitas pada himpunan entitas A. b. Hubungan one to many (1 : *) Setiap relationship menggambarkan hubungan antara sebuah entity occurance pada entitas yang satu dengan satu atau lebih entity occurance pada entitas lainnya yang ikut serta dalam relationship tersebut. Berarti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B. Namun, setiap entitas pada himpunan entitas B hanya dapat berhubungan dengan paling banyak satu entitas pada himpunan entitas A. c. Hubungan many to many (* : *) Setiap relationship menggambarkan hubungan antara satu atau lebih entity occurance pada entitas yang satu dengan satu atau lebih entity occurance pada entitas lainnya yang ikut serta dalam relationship tersebut. Berarti setiap entitas pada himpunan entitas A dapat berhubungan dengan banyak entitas pada himpunan entitas B. Dan sebaliknya, setiap entitas pada himpunan entitas B dapat berhubungan dengan banyak entitas pada himpunan entitas. 2.1.7 Normalisasi Menurut Conolly dan Begg (2010, p416), ketika kita merancang sebuah basis data untuk sebuah sistem yang berelasi tujuan utamanya adalah menciptakan representasi yang akurat dari sebuah data, hubungannya, dan 37 batasan-batasannya. Untuk mendapatkan hasil ini, kita harus mengidentifikasi kumpulan relasi yang tepat. Sebuah teknik yang dapat kita gunakan untuk mengidentifikasi hubungan antar data disebut dengan normalisasi. Normalisasi adalah sebuah pendekatan bottom-up terhdatap perancangan basis data dengan memulai memeriksa relasi dan atribut. Karakteristik dari sekumpulan hubungan yang sesuai termasuk sebagai berikut : a) Jumlah minimal dan atribut – atribut yang dibutuhkan untuk mendukung data yang dibutuhkan oleh perusahaan. b) Atribut – atribut dengan hubungan logikal yang dekat ditemukan dalam hubungan yang sama. c) Redudansi minimal dengan setiap atribut yang digambarkan hanya sekali dengan pengecualian yang sangat penting dari setiap atribut yang membentuk keseluruhan atau sebagian dari foreign key, dimana dibutuhkan untuk penggabungan hubungan yang saling terkait. 2.1.7.1 Data Redudancy Menurut Conolly dan Begg (2010, p418), tujuan utama perancangan basis data adalah mengelompokkan atribut-atribut ke dalam relasi-relasi sehingga meminimalisasi redundansi data dan mengurangi penggunaan tempat penyimpanan yang dibutuhkan untuk sebuah relasi dasar 38 2.1.7.2 Proses Normalisasi Menurut Conolly dan Begg (2010, p428), proses normalisasi terdiri dari : 1. Unnormalized Form (UNF) UNF adalah tabel yang memiliki satu atau lebih kelompok perulangan. 2. First Normal Form (1NF) 1NF merupakan bentuk normalisasi di mana data yang dikumpulkan menjadi satu field yang sifatnya tidak akan berulang dan tiap field mempunyai satu nilai. Suatu hubungan dikatakan normal pertama jika : Setiap baris dan kolom berisi atribut yang bernilai tunggal. Kunci primer (primer key) telah ditentukan. Atribut nilai banyak (multi value) telah dihilangkan. 3. Second Normal Form (2NF) 2NF merupakan bentuk normalisasi di mana field yang bukan kunci tergantung secara fungsi pada suatu primary key. Suatu hubungan berada dalam 2NF jika dan hanya jika : Berada pada 1NF. Semua atribut non-primary-key memiliki ketergantungan penuh (functional dependency) pada primary key. 39 Dalam 2NF, semua ketergantungan parsial harus dihilangkan. Ketergantungan parsial adalah ketergantungan antara atribut primary key yang satu dengan atribut primary key yang lain. 4. Third Normal Form (3NF) 3NF merupakan bentuk normalisasi di mana tidak ada field yang bukan primary key tergantung transitive kepada primary key. Suatu hubungan dikatakan 3NF jika : Berada dalam 1NF dan 2NF Setiap atribut non-primary-key memiliki ketergantungan transitif (transitive dependency) terhadap primary key. Ketergantungan transisitf adalah ketergantungan antara atribut non-primary-key dengan atribut non-primary-key. 5. Boyce-Codd Normal Form (BCNF) Merupakan bentuk normalisasi di mana jika dan hanya jika setiap determinant adalah candidate key. 6. Fourth Normal Form (4NF) Merupakan sebuah relasi dalam bentuk BCNF dan tidak berisikan ketergantungan multi-valued nontrivial. 7. Fifth Normal Form (5NF) Merupakan sebuah relasi yang tidak mempunyai ketergantungan gabungan (join dependency). 40 2.1.8 SDLC (Systems Development Life Cycle) SDLC (Software Development Life Cycle) merupakan sebuah siklus hidup pengembangan perangkat lnak yang terdiri dari beberapa tahapan-tahapan yangat penting dalam keberadaan perangkat lunak yang dilihat dari segi pengembangannya. SDLC dilakukan oleh analisis sistem dan programmer dalam membangun informasi. a. Fungsi SDLC Fungsi utama dari SDLC adalah mengakomodasi beberapa kebutuhan. Kebutuhan-kebutuhan itu biasanya berasal dari kebutuhan pengguna akhir dan juga pengadaaan perbaikan sejumlah masalah yang terkait dengan pengembangan perangkat lunak. Semua itu dirangkum pada proses SDLC yang dapat berupa penambahan fitur baru (kemampuan pengguna), baik itu secara modular (instalasi parsial atau update dan upgrade perangkat lunak) maupun dengan proses instalasi baru. Dari proses SDLC, berapa lama umur sebuah perangkat lunak dapat diperkirakan untuk dipergunakan yang dapat diukur atau disesuaikan dengan kebijakan dukungan dari pengembang perangkat lunak terkait. b. Model SDLC (Software Development Life Cycle) 1. Model Waterfall Merupakan model pengembangan sistem yang paling mudah dan paling sering digunakan. Model pengembangan ini bersifat linear dari tahap awal pengembang sistem, yaitu tahap perencanaan sampai tahap akhor pengembangan sistem yaitu tahap pemeliharaan. Tahapan berikutnya tidak akan dolaksanakan sebelum tahapan sebelumnya selesai dilaksanakan, dan tidak bisa kembali atau mengulang ke tahap sebelumnya. 41 Gambar 2.2 Tahapan Waterfall Kelebihannya : Merupakan model pengembangan paling handal dan paling lama digunakan Cocok untuk system software berskala besar Cocok untuk sistem software yang bersifat generic Pengerjaan project system akan terjadwal dengan baik dan mudah dikontrol Kekurangannya : Persyaratan sistem harus digambarkan dengan jelas Rincian proses harus benar-benar jelas dan tidak boleh berubah-ubah Sulit untuk mengadaptasi jika terjadi perubahan spesifikasi atau tahapan pengembangan 42 2.2 Teori Khusus 2.2.1 Intranet Menurut Turban, Rainer, dan Potter (2003), intranet adalah jaringan privat yang menggunakan perangkat lunak internet dan protokol TCP/IP. Intinya, intranet adalah Internet privat, atau grup dari segmen privat dari jaringan internet publik, digunakan oleh orang-orang yang diberikan untuk menggunakan jaringan tersebut. Keamanan internet merupakan suatu hal yang penting. Perusahaan dapat mencegah gangguan yang tidak diinginkan dengan berbagai cara. Public key security digunakan sebagai perantara otorisasi untuk masuk ke dalam intranet. Ada dua bagian di dalamnya, yaitu enkripsi dan digital certificate. Enkripsi mengacaukan data yang keluar, sementara digital certificate seperti kartu identitas elektronik yang memastikan bahwa orang yang mengakses intranet adalah user yang valid. Cara lain yang digunakan perushaan untuk melindungi intranet adalah menggunakan firewall. Firewall merupakan sebuah alat yang ditempatkan di antara jaringan internal perusahaan (Intranet) dan jaringan eksternal (Internet). 2.2.2 Web Statis dan Web Dinamis Menurut Connolly dan Begg (2010, p1033), dokumen HTML yang disimpan dalam file merupakan halaman webstatis, isinya tidak pernah akan pernah berubah kecuali file tersebut diubah, sedangkan isi dari halaman ini web dinamis dibangun setiap kali akses. Halaman web dinamis memiliki beberapa fitur yang dimiliki oleh web statis, yakni sebagai berikut : 43 Respon terhadap input yang diberikan oleh pelanggan melalui browser. Dapat diubah sesuai keinginan oleh dan untuk setiap pengguna. Halaman web dinamis memerlukan hypertext yang harus dibangun oleh server serta membutuhkan script yang menampilkan konversi dari format data yang berbeda ke HTML. 2.2.3 Web Database 2.2.3.1 Definisi Web Database Web database merupakan aplikasi penggunaan web sebagai platform yang menghubungkan pengguna dengan antarmuka satu atau lebih basis data (Connolly dan Begg, 2010). Web database merupakan suatu sistem yang bisa dibangun dengan menggabungkan teknologi basis data dan web (Eaglestone dan Ridley, 2001). Berdasarkan sumber-sumber definisi diatas, maka dapat disimpulkan web database adalah suatu sistem aplikasi yang menggabungkan teknologi basis data dan web serta dapat berinteraksi dengan pengguna. 2.2.3.2 Syarat-syarat Integrasi Web Database Berikut adalah daftar dari beberapa syarat-syarat penting untuk mengintegrasikan aplikasi basis data dengan web, yaitu (Connolly dan Begg, 2010, p1035) : 44 Kemampuan untuk mengakses data perusahaan yang berharga dengan cara aman. Data dan vendor tidak saling bergantung sehingga memungkinkan kebebasan untuk memilih DBMS. Kemampuan untuk berinteraksi dengan basis data, tidak bergantung pada browser atau web server tertentu. Solusi keterhubungan yang memberikan keuntungan dari seluruh fitur DBMS organisasi. Arsitektur terbuka memungkinkan kemampuan untuk diganti dengan sistem dan teknologi yang bervariasi. Solusi efektivitas biaya yang memungkinkan scalability, pertumbuhan, dan perubahan dalam petunjuk strategis, dan membantu mengurangi biaya pembuatan aplikasi. Dukungan untuk transaksi yang menjangkau permintaan multiple HTTP. Dukungan untuk session dan aplikasi berdasarkan autentifikasi. Performa yang dapat diterima. Pengeluaran tambahan (overhead) administrasi yang minimal. Penentuan perangkat produktivitas level tinggi sehingga memungkinkan aplikasi untuk dibangun, dipelihara, dan disebarkan dengan relatif mudah dan cepat. 45 2.2.4 Perangkat Lunak yang Digunakan 2.2.4.1 PHP PHP adalah bahasa script open source HTML embedded yang mendukung banyak web server dengan tujuan memampukan webdeveloper untuk mampu menulis banyak halaman dinamis secara cepat (Connolly dan Begg, 2010, p1043). PHP adalah bahasa script open source yang tersedia untuk banyak platform. PHP sering dihubungkan dengan MySQL atau PostgreSQL karena kombinasi secara bebas dari basis data yang tersedia dan bahas script yang menyediakan paket lengkap untuk membangun aplikasi web databse. (Eaglestone dan Ridley, 2001). Berdasarkan sumber-sumber definisi diatas maka dapat disimpulkan PHP adalah bahasa script server side yang open source yang tersedia untuk banyak platform yang bisa disisipkan pada HTML sehingga dapat menghasilkan halaman web yang dinamis sehingga perawatan menjadi lebih mudah dan efisien. Kelebihan menggunakan PHP : PHP memiliki banyak kelebihan yang tidak dimiliki oleh bahasa script sejenis. Kelebihan itu antara lain sebagai berikut (Kasiman Peranginangin, 2006) : PHP difokuskan pada pembuatan script server side, yang bisa melakukan apa saja yang dapat dilakukan oleh CGI, seperti mengumpulkan data dari form, menghasilkan isi halaman web 46 dinamis, dan kemampuan mengirim serta menerima cookies, bahkan daripada kemampuan CGI. PHP dapat digunakan pada semua sistem operasi, bahkan PHP dapat bekerja sebagai CGI processor. PHP tidak terbatas pada hasil keluaran HTML. PHP juga memiliki kemampuan untuk mengolah keluaran gambar, file PDF, dan animasi Flash. PHP juga dapat menghasilkan teks seperti XHTML dan file XML lainnya. PHP dapat mendukung banyak sistem basis data. 2.2.4.2 MySQL MySQL adalah sebuah perangkat lunak sistem manajemen basis data (DBMS) yang multithread dan multiuser. Konsep dari MySQL sendiri adalah pengoperasian basis data baik dalam hal pemilihan atau seleksi dan pemasukkan data, yang memungkinkan pengoperasian data dilakukan dengan mudah secara otomatis. Kelebihan menggunakan MySQL sebagai database server : MySQL didistribusikan dibawah lisensi GPL (General Public Lisence) sehingga dapat dipakai secara gratis (Open Source). MySQL dapat digunakan secara stabil di berbagai sitem operasi (Linux, Mac OS, Windows) sehingga bersifar Portability. Multiuser, sebab dapat digunakan oleh beberapa user dalam waktu yang bersamaan tanpa bermasalah. 47 MySQL dapat menangani database dalam skala yang besar dengan jumlah record lebih dari 50 juta dan 60 ribu table serta 5 milyar baris. Performance tuning dimana MySQL memiliki kecepatan dalam menangani query sederhana, dengan kata lain dapat memproses lebih banyak SQL per satuan waktu. MySQL memiliki tingkat security atau keamanan yang tinggi seperti level subnet mask, nama host, dan izin akses user dengan system perizinan yang mendetail serta password yang terenkripsi. 2.2.4.3 Cascading Style Sheet (CSS) Cascading Style Sheet atau CSS adalah suatu bahasa stylesheet yang digunakan untuk mengatur tampilan suatu halaman web. Penggunaan paling umum adalah untuk memformat halaman web yang ditulis dengan HTML dan XHTML. CSS dapat digunakan untuk mengatur besar kecilnya text, warna dan style font, mengatur warna atau gambar background, dan berbagai manfaat lainnya. (Schengili dan Roberts, 2000) 2.2.4.4 XAMPP XAMPP merupakan singkatan dari X (empat system operasi apapun), Apache, MySQL, PHP, Perl. XAMPP merupakan alatyang menyediakan paket perangkat lunak kedalam sebuah paket. Dalam 48 paket tersebut sudah terdapat Apache (web server). MySQL (database), PHP (server-side scripting), Perl, FTP server, phpMyAdmin dan berbagai pustaka bantu lainnya. 2.2.4.5 Web Browser Dikenal juga dengan istilah browser atau internet browser. Browser adalah software yang memperbolehkan user dalam menampilkan dan berinteraksi dengan teks, gambar, video, musik, dan informasi lainnya yang terdapat di halaman web. Teks dan gambar di halaman webbisa merupakanhyperlink yang mengarah ke halaman lain. Web browser menjadikan user lebih cepat dan mudah mengakses informasi. Dua program web browser yang cukup popular saat ini adalah Google Chrome dan Mozilla Firefox. 2.2.5 360 Degree Feedback 360 degree feedback merupakan sebuah metode yang digunakan untuk proses mengumpulkan data yang akan dinilai dari beberapa persepsi seputar perilaku seseorang dan dampak dari perilaku tersebut. Metode 360 degree feedback ini akan mengumpulkan data berdasarkan persepsi yang diambil dari atasan, atasan dari atasan, laporan langsung, kolega, anggota kelompok proyek, pelanggan internal dan external, serta supplier. 49 Gambar 2.3 360 degree feedback Yang membedakan 360 degree feedback dari metode lainnya adalah metode ini menggunakan umpan balik sebagai penilaian utamanya, disebut umpan balik karena penilaian kinerja dilakukan dari dua atau lebih sumber(Richard Lepsinger dan Anntoinette D. Lucia, 1997). 2.2.5.1 Fungsi 360degree Feedback Menurut Richard Lepsinger dan Annotoinette D. Lucia (1997, p19-21), fungsi dari 360 degree feedback antara lain : 1. Untuk mencapai strategi bisnis dan perubahan budaya dengan menjelaskan prilaku yang diperlukan untuk meningkatkan inisiatif 2. Untuk meningkatkan efektifitas dalam tim 3. Sebagai bagian dari sistem menejemen sumber daya manusia, untuk memastikan bahwa pekerjaan penting yang berhubungan dengan perilaku sedang dikembangkan, dievaluasi dan dihargai. 50 2.2.5.2 Data-Data Yang Dikumpulkan Sebuah proses 360degree dapat digunakan untuk mengumpulkan informasi mengenai individual’s skills (skill individu), knowledge (pengetahuan),dan style (gaya). Individual’s Skills Kemahiran dalam mengerjakan tugas. Contohnya kemampuan untuk berfikir strategis, berkomunikasi secara tertulis, mendelegasikan pekerjaan, memperngaruhi, berunding, mengoperasikan sebuah mesin. Knowledge Keakraban dengan subjek atau disiplin. Contohnya pengetahuan bisnis atau industri. Style Pola karakteristik atau cara merespon lingkungan eksternal. Contohnya self-confidence, level energy, kestabilan emosional. 2.2.5.3 Metode Pengumpulan Data Feedback Menurut Richard Lepsinger (Richard Lepsinger dan Anntoinette D. Lucia, 1997), questionnaires dan interviews adalah 2 metode yang paling popular dalam proses mengumpulkan feedback dari sumber yang berbeda, dan tiap metode dapat digunakan sendiri maupun dalam membantu metode lainnya. 51 2.2.5.3.1 Metode Questionnaires Questionnaires mengumpulkan feedback dalam bentuk numerik atau penilaian quantitatif dari perilaku spesifik atau karakteristik dari orang yang ditargetkan. Untuk tiap-tiap pertanyaan, penilai diberikan pilihan jawaban yang secara umum berbentuk barisan pilihan yang menanyakan penilai tentang seberapa banyak (sebagai contoh, selalu sampai dengan tidak pernah) atau seberapa baik (sebagai contoh, sangat baik sampai dengan sangat buruk). 2.2.5.3.2 Metode Interviews Proses pengumpulan data dengan metode interviews yang digunakan di 360 degree feedback biasanya dilakukan di lingkungan yang memiliki privasi tinggi, dan bisa berjalan selama setengah jam sampai dengan 3 jam. Untuk mendapatkan hasil terbaik, orang yang ditunjuk sebagai interviewer sebaiknya adalah fasilitator profesional, konsultan atau psikologis yang terlatih dalam teknik wawancara maupun analisis informasi. Wawancara terbagi atas wawancara terstruktur dan tidak terstruktur, yaitu: 1. Wawancara terstruktur artinya peneliti telah mengetahui dengan pasti apa informasi yang ingin digali dari responden sehingga daftar pertanyaannya sudah dibuat secara sistematis. Peneliti juga dapat menggunakan alat bantu tape recorder, kamera photo, dan material lain yang dapat membantu kelancaran wawancara. 52 2. Wawancara tidak terstruktur adalah wawancara bebas, yaitu peneliti tidak menggunakan pedoman wawancara yang berisi pertanyaan yang akan diajukan secara spesifik, dan hanya memuat poin-poin penting masalah yang ingin digali dari responden.