perancangan data mart kepegawaian pada unit sumber daya manusia
TRANSCRIPT
1
PERANCANGAN DATA MART KEPEGAWAIAN PADA UNIT SUMBER DAYA MANUSIA
(HUMAN RESOURCE) PT. GMF AEROASIA
Citra Prawita Kirana1 Prihandoko2
1, 2Universitas Gunadarma Jl. Margonda Raya 100 Pondok Cina
Depok 16424 [email protected]
ABSTRAK
Proses manajemen informasi sumber daya manusia yang menangani
seluruh transaksi kepegawaian, mulai dari pendataan pegawai baru, turnover pegawai, cuti, pelanggaran, promosi, demosi, sampai penggajian, membutuhkan data dalam jumlah yang sangat banyak setiap bulannya. Ditambah lagi apabila perusahaan memiliki pegawai yang berjumlah lebih dari 2000 orang, tentunya proses pencarian data untuk membuat laporan akan memakan waktu yang cukup lama. Berdasarkan alasan tersebut, penulis mencoba membuat suatu datamart, yang diharapkan mampu menghasilkan data sesuai dengan kriteria yang diinginkan secara cepat dan akurat. Datamart ini dibuat dengan menggunakan fasilitas DTS (Data Transformation Services) yang ada di SQL Server 2000, mulai dari proses ekstraksi, transformasi, sampai proses loading. Sedangkan aplikasi untuk mengakses data mart ini dibangun dengan bahasa pemrograman Visual Basic 6.0 Kata Kunci : Data Mart, Human Resource, dan ETL
2
PENDAHULUAN
PT. GMF AeroAsia adalah anak perusahaan milik PT. Garuda Indonesia
yang khusus menangani masalah perawatan pesawat terbang. Sebagai anak
perusahaan, GMF termasuk perusahaan yang cukup besar, ditunjang dari jumlah
pegawainya yang mencapai ± 2400 orang. Dalam organisasi sebesar itu, pihak
manajemen informasi sumber daya manusia (Human Resource) membutuhkan
data dengan jumlah yang sangat banyak dalam kesehariannya untuk memproses
segala transaksi kepegawaian, mulai dari absensi harian, penggajian, cuti,
promosi, pelanggaran, dan lain-lain. Banyaknya data ini tentunya akan
mempersulit proses pembuatan laporan yang mencakup seluruh data tersebut.
Data-data yang digunakan untuk keperluan transaksional di atas tersimpan
di dalam tabel-tabel yang jumlahnya cukup banyak. Sehingga untuk membuat
suatu laporan kepegawaian yg melibatkan lebih dari satu dimensi (kriteria), maka
user harus mencarinya dalam tabel-tabel yang bersangkutan dan melakukan
beberapa proses join sehingga akan memakan waktu yang cukup lama. Padahal,
laporan-laporan tersebut adalah dasar dari proses pengambilan keputusan yang
tetntunya harus dapat dilakukan secara cepat dan akurat. Untuk dapat memenuhi
tuntutan itu, dibutuhkan suatu Data Mart, yang diharapkan dapat memberi
kemudahan bagi pihak manajemen SDM PT. GMF AeroAsia untuk memperoleh
informasi yang sesuai untuk digunakan dalam membuat laporan kepegawaian
secara cepat dan akurat.
TINJAUAN PUSTAKA Data Warehousing
Menurut Bill Inmon yang dikenal sebagai “father of the Data Warehouse”,
definisi dari Data Warehouse adalah : Sekumpulan/koleksi data yang mendukung
pengambilan keputusan pihak manajemen yang mempunyai beberapa karakteristik
sebagai berikut :
a. Subject Oriented
3
Sebuah Data Warehouse dirancang dan dibangun untuk memenuhi
kebutuhan analisis data berdasarkan subjek tertentu.
b. Integrated
Untuk memenuhi kebutuhan analisis secara menyeluruh, sebuah Data
Warehouse harus mampu mengintegrasikan data dari berbagai sumber data
yang beragam.
c. Non Volatile
Data-data dalam sebuah Data Warehouse tidak dapat diubah (tidak dapat
di-update). Data-data tersebut merupakan data historis yang digunakan
untuk memenuhi kebutuhan analisis, bukan untuk menangani transaksi
seperti pada operasional database pada umumnya.
Gambar 1. Hubungan antara Operational Database dan Data Warehouse
d. Time Variant
Model analisis yang diterapkan pada sebuah Data Warehouse
berfokus pada perubahan data faktual berdasarkan waktu. Dalam hal ini Data
Warehouse harus mampu menyimpan data untuk sebuah subjek tertentu dalam
waktu yang berbeda-beda.
Data warehouse memungkinkan pengguna untuk menggabungkan data
yang bersifat operasional dengan data historis yang mungkin tersimpan di sumber
yang berbeda baik lokasi maupun bentuknya. Hal ini memungkinkan pengguna,
OLAPDatabase
Data Warehouse
Operational System Application
Decision Support System( DSS)
read changeadd delete read
4
para eksekutif, manajer maupun analis untuk melakukan permintaan dan analisis
atas data perusahaan dari berbagai dimensi yang berbeda. Data warehouse
memungkinkan penggunanya untuk melakukan analisis kompleks atas data
perusahaan termasuk mencari, mengumpulkan, dan memanipulasi untuk
mendapatkan data dalam bentuk baru, menyaring dan menghilangkan data yang
tidak dikehendaki, menggabungkannya dengan data dari sumber lain atau
membuat suatu kesimpulan untuk memenuhi kebutuhan tertentu.
Data operasional biasanya menjadi sumber data bagi data warehouse, yang
kemudian disimpan di dalam sistem pengumpulan terpisah. Untuk membangun
suatu arsitektur Data Warehouse sangat tergantung pada kebutuhan sistem
(system requirements). Berbeda dengan Database Operasional, data dalam Data
Warehouse digunakan untuk keperluan spesifik, umumnya berupa analisis oleh
aplikasi-aplikasi dalam Executive Information System (EIS) atau Decision Support
System (DSS).
Tabel fakta
Adalah suatu tabel yang merupakan jantung dari star schema. Tabel fakta
terdiri dari dua bagian. Bagian pertama mendefinisikan primary key yang terdiri
dari primary key-primary key dari dimensi-dimensi yang ada di sekelilingnya.
Bagian kedua adalah nilai-nilai numerik yang dapat diukur dalam Data
Warehouse. Nilai-nilai yang dapat diukur tersebut bisa didefinisikan dan
dikalkulasikan.
Tabel dimensi
Dikenal sebagai look up atau reference table, berisi data yang relative
statis dalam sebuah data warehouse.
Extraction Transformation Loading (ETL)
Fungsi ETL adalah melakukan format ulang data-data yang relevan dari
sistem sumber ke dalam informasi yang berguna dan siap disimpan ke dalam Data
Warehouse.
5
a. Extraction
Ekstraksi adalah proses penyaringan data dari data sumber, atau pemilihan
data yang dibutuhkan dari data sumber untuk dimasukkan ke dalam Data
Warehouse.
b. Transformation
Tahap transformasi menjalankan serangkaian perintah dan fungsi dari data
yang telah di-extract untuk mendapatkan data yang sesuai yang akan di loading ke
dalam Data Mart. Seperti pembersihan data, standarisasi elemen data, melakukan
translasi kode, menghasilkan nilai perhitungan yang baru, melakukan proses join
dari sumber yang berbeda, misalnya pada proses lookup atau merge, dan lain-lain.
c. Loading
Tahap terakhir ini akan mengisi data ke dalam data warehouse.
On Line Analytical Processing (OLAP)
OLAP atau On Line Analitycal Processing adalah sebuah konsep
presentasi data yang memungkinkan kita melihat data dari beberapa aspek atau
dimensi (multidimensional) dalam rangka melakukan analisa, yang oleh sistem
diterjemahkan menjadi query pada data yang berjumlah sangat banyak. Database
OLAP menggunakan data model multidimensi, yang mengijinkan query analisis
yang kompleks dengan kecepatan eksekusi yang tinggi. Hasil yang dikeluarkan
oleh query OLAP pada umumnya ditampilkan dalam format matrix atau pivot.
Di dalam konsep OLAP digunakan dikenal istilah cube untuk model data
yang terdiri dari tabel metrik (fact table) dimana data transaksional disimpan, dan
tabel-tabel dimensi (dimensional tables) yang menyimpan data tentang aspek-
aspek atau dimensi dari data.
6
PROSES PERANCANGAN DATA MART
Tabel dan field yang
sesuai dengan user requirement
Load
Dimension table
Fact table
Identifikasi data sumber
Extract
Transform
Proses ETL
Tabel-tabel data sumber
Memformat data, joining tabel,
membuat tabel fakta dan dimensi,
enrichment data
User Requirements
7
Gambar 2. Alur Proses Perancangan Data Mart
Narasi alur proses perancangan Data Mart di atas adalah sebagai berikut:
1. Langkah pertama adalah mengidentifikasi tabel-tabel pada data sumber
yang memuat data-data yang dibutuhkan untuk metrik dan dimensi yang
telah ditetapkan sesuai kebutuhan user (user requirements).
2. Data-data tersebut kemudian dimasukkan ke dalam staging area, hal ini
dimaksudkan agar proses ETL yang akan dilakukan terhadap data-data
tersebut tidak mengganggu proses transaksi OLTP yang sedang
berlangsung. Staging area yang digunakan pada kasus ini adalah SQL
Server 2000, dan databasenya adalah HR.
• Dalam database HR tersebut dilakukan proses ETL. Pertama, data-
data dalam tabel diekstraksi, yaitu dipilih field-field yang
dibutuhkan yang sesuai dengan metrik dan dimensi pada user
requirements, sedangkan field-field yang tidak dibutuhkan
diabaikan atau dibuang.
Mengakses Data Mart
12
34
5
Bar graph
CUBEDATA MART
Membangun Cube
8
• Selanjutnya dilakukan proses transformasi terhadap data-data
terpilih itu. Data-data tersebut diproses menjadi bentuk yang
diinginkan untuk kemudian dimasukkan ke Data Mart.
- Proses transformasi yang pertama adalah memformat data,
yaitu menentukan tipe data pada setiap field.
- Selanjutnya adalah proses joining antara tabel Masa_bakti
dan tabel Turn_over agar dapat diketahui pegawai mana
yang masih aktif dan yang sudah tidak aktif di perusahaan.
- Membuat tabel-tabel fakta dan tabel-tabel dimensi sesuai
dengan user requirements yang telah ditentukan.
- Kemudian pada tabel-tabel fakta dan dimensi tersebut
ditambahkan beberapa field turunan, yaitu field-field yang
diturunkan (dihasilkan) dari perhitungan field-field lain,
misalnya MKA, Sisa MKA, dan usia pegawai. Selain itu
juga ditambahkan surrogate key (key pengganti) dan field
of 1’s.
• Setelah ditransform, data-data tersebut lalu diisikan ke dalam tabel-
tabel fakta dan dimensi yang telah dibuat.
3. Data-data yang telah tersimpan dalam tabel fakta dan dimensi itu
kemudian diubah menjadi bentuk data yang multidimensi yang dapat
dilihat dari segala sudut sehingga dapat diakses oleh client untuk
keperluan analisis. Proses ini menggunakan query-query SQL dan
divisualisasikan menjadi aplikasi sehingga memudahkan user dalam
melihat data-data di data mart.
Analysis User Requirements
Pada perancangan Data Mart ini, manajemen operasional Sumber Daya
Manusia GMF dibagi menjadi 3 sub modul, yaitu Personnel Administration,
Leave Administration, dan Payroll.
9
Berikut adalah kebutuhan-kebutuhan bisnis (user business requirements)
dari masing-masing sub modul tersebut yang dibutuhkan oleh manajer untuk
keperluan analisis.
Tabel 1. User Requirements
Sub Modul Requirements Keterangan
Personnel
Administration
Data-data pribadi pegawai
Informasi data-data pribadi
pegawai (mulai dari nama, tgl lahir,
usia, jenis kelamin,dan lain-lain).
Dikelompokkan berdasarkan
jabatan/unit, grade, masa bakti, dan
lain-lain.
Pendidikan pegawai
Informasi pendidikan terakhir
pegawai.
Dikelompokkan berdasarkan
jabatan/unit.
Alamat pegawai Informasi sebaran tempat tinggal
pegawai.
Masa bakti
Informasi masa bakti pegawai.
Dikelompokkan berdasarkan
jabatan/unit, usia, jenis kelamin,
dan lain-lain.
Jumlah pegawai aktif
Jumlah pegawai yang masih
aktif/masih bekerja di perusahaan.
Dikelompokkan berdasarkan
jabatan/unit, masa bakti, jenis
kelamin, usia, dan lain-lain.
Pensiun
Informasi pegawai yang pensiun
bulan ini.
Dikelompokkan berdasarkan
jabatan/unit, masa bakti, usia.
Turn over Jumlah pegawai yang
mengundurkan diri.
10
Dikelompokkan berdasarkan
jabatan/unit, alasan, jenis kelamin.
Informasi pelanggaran
Informasi pegawai yang melakukan
pelanggaran, jenis pelanggaran,
sanksi, dan lain-lain.
Dikelompokkan berdasarkan
jabatan/unit, grade, jenis kelamin.
Informasi penghargaan
Informasi pegawai yang menerima
penghargaan tahun ini.
Dikelompokkan berdasarkan
jabatan/unit, masa bakti, usia.
Promosi
Jumlah pegawai yang mendapat
promosi.
Dikelompokkan berdasarkan
jabatan/unit, grade, masa bakti,
usia, jenis kelamin.
Demosi
Jumlah pegawai yang di demosi.
Dikelompokkan berdasarkan
jabatan/unit, grade, masa bakti,
usia, jenis kelamin.
Leave
Administration
Cuti tahunan
Rata-rata cuti tahunan yang
diambil pegawai setiap tahunnya.
Dikelompokkan berdasarkan
jabatan/unit, masa bakti.
Cuti istimewa
Rata-rata cuti istimewa yang
diambil pegawai setiap tahunnya.
Dikelompokkan berdasarkan
jabatan/unit, alasan.
Payroll
Gaji Pokok Informasi gaji pokok pegawai.
Dikelompokkan berdasarkan grade.
Tunjangan Jabatan
Informasi tunjangan yang di dapat
oleh pegawai-pegawai yang berada
di tingkat manajer ke atas
11
(tunjangan jabatan).
Uang Transport
Rata-rata uang transport yang
dikeluarkan setiap bulan.
Dikelompokkan berdasarkan
jabatan/unit.
Biaya Overtime
Rata-rata biaya overtime yang
harus dikeluarkan setiap bulan.
Dikelompokkan berdasarkan
jabatan/unit.
Pendapatan Pegawai
Total pendapatan pegawai yang
harus dibayarkan setiap bulan.
Dikelompokkn berdasarkan
jabatan/unit.
Metrik dan Dimensi
Dari user requirements tersebut dilakukan analisa untuk menentukan
metrik dan dimensi yang sesuai. Metrik adalah data yang berupa besaran yang
nilainya dapat dikalkulasikan, sedangkan dimensi adalah kategori dari mana /
berdasarkan apa data metrik tersebut dilihat.
Berikut ini adalah metrik-metrik beserta satuan ukuran yang digunakan untuk
setiap sub modul.
Tabel 2. Metrics
Sub Modul Metrik Ukuran
Personnel Administration
MKA (Now) Tahun
MKA (Pensiun) Tahun
MKA (Turnover) Tahun
Sisa MKA Tahun
Personnel Action Jumlah Pelanggaran Orang
Jumlah Pegawai Yang Mendapat Orang
12
Penghargaan
Jumlah Promosi, Demosi Orang
Leave Lama Cuti Hari
Payroll
Gaji Pokok Pegawai Rupiah
Uang Transport Rupiah Uang Overtime Rupiah Tunjangan Jabatan Rupiah Pendapatan Pegawai Rupiah
Sedangkan tabel di bawah ini berisi dimensi-dimensi dari setiap sub modul
di atas.
Tabel 3. Dimensions
Sub Modul Dimensi Keterangan
Personnel
Administration
Data Pribadi Pegawai Dapat digunakan untuk melihat
demografi pegawai berdasarkan
data pribadi.
Misalkan ingin dilihat sebaran
tempat tinggal pegawai
berdasarkan jenis kelamin, atau
informasi pegawai berdasarkan
pendidikan terakhirnya,
berdasarkan usia atau status
perkawinan.
Informasi Jabatan Informasi jabatan pegawai, unit,
grade, dan lain-lain.
Personnel Action Pelanggaran Informasi waktu terjadinya
pelanggaran, jenis pelanggaran,
dan pegawai-pegawai yang
melakukan pelanggaran.
Penghargaan Memperlihatkan informasi
penghargaan yang diberikan
perusahaan kepada pegawai,
13
bentuk penghargaan, dan siapa
saja pegawai yang mendapat
penghargaan, serta alasannya.
Promosi, Demosi Memperlihatkan waktu terjadinya
promosi, demosi dan data-data
pegawai yang mendapatkan
promosi dan demosi tersebut.
Leave Administration
Informasi cuti pegawai Dapat digunakan untuk melihat
informasi cuti pegawai
berdasarkan jenis cuti, waktu
pengambilan cuti.
Payroll
Informasi gaji pegawai Gaji pegawai, periode penggajian
Informasi tunjangan Tunjangan jabatan, uang
transport, overtime.
Identifikasi Tabel-Tabel Data Sumber
Berikut adalah tabel-tabel yang menyimpan semua data yang dibutuhkan
untuk proses ETL.
Tabel 4. Tabel-tabel data sumber
Tabel Personnel_info
Field Name Note
Emp_no Nomer induk pegawai
Name Nama pegawai
Place_of_Birth Tempat lahir pegawai
Date_of_Birth Tanggal lahir pegawai
Age Usia pegawai
Sex Jenis kelamin pegawai
Religion Agama pegawai
Marital_status Status perkawinan pegawai
14
Last_education_level Pendidikan terakhir pegawai
Major Bidang pendidikan terakhir
pegawai
Last_education_institution_name Instansi pendidikan terakhir
pegawai
Tabel Address
Field Name Note
Emp_no Nomer induk pegawai
Name Nama pegawai
Address Alamat lengkap pegawai
City Kota tempat tinggal pegawai
Province Provinsi tempat tinggal pegawai
Zip_code Kode pos tempat tinggal pegawai
Phone Nomer telepon pegawai
Email Alamat email pegawai
Tabel Masa_bakti
Field Name Note
Emp_no Nomer induk pegawai
Name Nama pegawai
Join_date Tanggal diterimanya pegawai di
perusahaan
Retired_date Tanggal pensiun pegawai
Retired_age
Usia pensiun pegawai (semua
pegawai akan pensiun di usia 56
tahun
Tabel Turn_over
Field Name Note
15
Emp_no Nomer induk pegawai
Name Nama pegawai
Join_date Tanggal diterimanya pegawai di
perusahaan
Turnover_date Tanggal pegawai keluar dari
perusahaan
Reason_for_turnover Alasan pegawai keluar dari
perusahaan
Tabel Emp_position
Field Name Note
Emp_no Nomer induk pegawai
Name Nama pegawai
Position Jabatan pegawai
Unit_dinas_code Kode unit dinas
Unit_bidang_code Kode unit bidang
Unit_seksi_code Kode unit seksi
Rumpun Jenis jabatan
Position_group Kelompok jabatan
Job_type Tipe pekerjaan (direct / indirect)
Grade Golongan
Valid_from Terhitung mulai tanggal pegawai
menempati jabatan tertentu
Tabel Unit_dinas
Field Name Note
Unit_dinas_code Kode unit dinas
Unit_dinas Nama unit dinas
Tabel Unit_bidang
16
Field Name Note
Unit_bidang_code Kode unit bidang
Unit_bidang Nama unit bidang
Tabel Unit_seksi
Field Name Note
Unit_seksi_code Kode unit seksi
Unit_seksi Nama unit seksi
Tabel Pers_action
Field Name Note
Emp_no Nomer induk pegawai
Name Nama pegawai
Unit_seksi_code Kode unit seksi
Act_date Tanggal promosi atau demosi
Act_type Tipe action (promosi / demosi)
Reason_for_act Alasan dilakukannya promosi
atau demosi
Tabel Award
Field Name Note
Emp_no Nomer induk pegawai
Name Nama pegawai
Award_date
Tanggal diberikannya
penghargan (pada saat ulang
tahun GMF)
Award_name Nama penghargaan
Reason_for_award Alasan diberikannya
penghargaan
Award_prize Bentuk penghargaan
17
Tabel Violation
Field Name Note
Emp_no Nomer induk pegawai
Name Nama pegawai
Incident_date Tanggal terjadinya pelanggaran
Reference Referensi
Violation Nama pelanggaran
Violation_level Tingkat pelanggrana
Sanction Sanksi yang diberikan
Status
Status kasus (apakah sudah
selesai, masih dlam proses, atau
ditunda)
Tabel Leave
Field Name Note
Emp_no Nomer induk pegawai
Name Nama pegawai
Start_date Tanggal mulai cuti
End_date Tanggal cuti beakhir
Leave_total Total cuti (berapa hari)
Leave_type Jenis cuti
Leave_name Nama cuti
Tabel Absence
Field Name Note
Periode Periode penggajian
Emp_no Nomer induk pegawai
Name Nama pegawai
Unit_seksi_code Kode unit seksi
18
Plann_W_Days Jumlah hari kerja per bulan
Attendance Total kehadiran per bulan
Business_trip Total perjalanan bisnis per bulan
Training Total training per bulan
Leave Total cuti per bulan
Other_absence Total ketidakhadiran lainnya per
bulan
Overtime_Hours Total overtime per bulan (dalam
hitungan jam)
Extra_vooding
Total jam kerja ekstra diluar
overtime per bulan (00.00 am -
06.00 am) (dalam hitungan jam)
Remark
Tabel Allowance
Field Name Note
Position_group Kelompok jabatan
Allowance Besar tunjangan
Tabel Salary
Field Name Note
Salary_code Kode gaji
Grade Golongan
Rumpun Jenis jabatan
Position_group Kelompok jabatan
Min_salary Gaji minimal
Max_salary Gaji maksimal
Salary Besar gaji
19
Extraction, Transformation, and Loading (ETL)
Extraction
Memilih field-field pada tabel-tabel
data sumber sesuai dengan
kebutuhan.
Transformation
Menentukan tipe data pada setiap field yang telah dipilih (tipe data sql),
Joining tabel Masa_bakti dan tabel Turn_over,
Membuat field-field turunan (MKA_Retired,MKA_Turnover,MKA_Now,Sisa_MKAMembuat tabel-tabel fakta
dan dimensi,Menambahkan surrogate key (key pengganti) dan
field of 1's.
Loading
Mengisikan data ke tabel fakta dan
dimensi yang telah dibuat.
Data Mart
Proses ETL (Extraction, Transformation, and Loading
Data Sumber
Tabel A
Tabel D
Tabel C
Tabel B
Gambar 3. Proses Extraction, Transformation, and Loading
a. Extraction
Tabel-tabel pada data sumber yang telah diidentifikasi selanjutnya di-extract atau
dipilih field-field apa saja yang dibutuhkan untuk di load ke dalam tabel-tabel
fakta dan dimensi. Sehingga tidak semua data dalam data sumber dimasukkan ke
dalam data mart, tatapi hanya data-data yang mempunyai relevansi dengan user
requirements saja.
Tabel 5. Tabel-tabel beserta field yang telah diekstraksi
Tabel Personnel_info Field Name Type Note
Emp_no Varchar(6) Primary key
Name Varchar(255)
20
Place_of_Birth Varchar(255)
Date_of_Birth Datetime
Age Int
Sex Varchar(255)
Religion Varchar(255)
Marital_status Varchar(255)
Last_education_level Varchar(255)
Major Varchar(255)
Last_education_institution_name Varchar(255)
Tabel Address
Field Name Type Note
Emp_no Varchar(6) Primary key
Address Varchar(255)
City Varchar(255)
Province Varchar(255)
Zip_code Varchar(5)
Phone Varchar(255)
Email Varchar(255)
Tabel Masa_bakti
Field Name Type Note
Emp_no Varchar(6) Primary key
Join_date Datetime
Retired_date Datetime
Tabel Turn_over
Field Name Type Note
Emp_no Varchar(6) Primary key
Turnover_date Datetime
Reason_for_turnover Varchar(255)
21
Tabel Emp_position Field Name Type Note
Emp_no Varchar(6) Primary key
Position Varchar(255)
Unit_dinas_code Varchar(5)
Unit_bidang_code Varchar(6)
Unit_seksi_code Varchar(15)
Rumpun Varchar(255)
Position_group Varchar(255)
Job_type Varchar(255)
Grade Varchar(2)
Valid_from Datetime
Tabel Pers_action
Field Name Type Note
Emp_no Varchar(6) Primary key
Act_date Datetime
Act_code Varchar(2)
Act_type Varchar(255)
Reason_for_act Varchar(255)
Last_position Varchar(255)
Last_position_group Varchar(255)
Last_rumpun Varchar(255)
Last_unit_dinas Varchar(255)
Last_unit_bidang Varchar(255)
Last_unit_seksi Varchar(255)
Last_grade Varchar(2)
Last_job_type Varchar(255)
Last_salary Money
New_position Varchar(255)
New_position_group Varchar(255)
22
New_rumpun Varchar(255)
New_unit_dinas Varchar(255)
New_unit_bidang Varchar(255)
New_unit_seksi Varchar(255)
New_grade Varchar(2)
New_job_type Varchar(255)
New_salary Money
Tabel Award
Field Name Type Note
Emp_no Varchar(6) Primary key
Award_date Datetime
Award_name Varchar(255)
Reason_for_award Varchar(255)
Award_prize Varchar(255)
Tabel Violation
Field Name Type Note
Emp_no Varchar(6) Primary key
Incident_date Datetime
Reference Varchar(255)
Violation Varchar(255)
Violation_level Varchar(2)
Sanction Varchar(255)
Status Varchar(255)
Tabel Leave
Field Name Type Note
Emp_no Varchar(6) Primary key
Start_date Datetime
End_date Datetime
Leave_total Int
23
Leave_type Varchar(255)
Leave_name Varchar(255)
Tabel Absence
Field Name Type Note
Periode Datetime Primary key
Emp_no Varchar(6)
Plann_W_Days Int
Attendance Int = Plann_W_Days –
(Business_trip + Training + Leave + Other_absence)
Business_trip Int
Training Int
Leave Int
Other_absence Int
Overtime_Hours Int
Tabel Allowance
Field Name Type Note
Position_group Varchar(255) Primary key
Allowance Money
Tabel Salary
Field Name Type Note
Salary_code int
Grade Varchar(2)
Rumpun Varchar(2)
Position_group Varchar(3)
Min_salary Money
Max_salary Money
Salary Money
24
b. Transformation
Setelah data di-extract, proses selanjutnya adalah transformasi data yaitu proses
mengubah data menjadi bentuk yang sesuai dengan kebutuhan. Beberapa proses
transformasi yang akan dilakukan pada perancangan data mart HR ini, yaitu :
i. Memberikan tipe data
Proses memberikan tipe data pada setiap field dapat juga dilakukan pada
saat ekstraksi data. Sedangkan pada proses transformasi ini dilakukan lagi
pemeriksaan terhadap semua tipe data untuk menghindari terjadinya perbedaan
tipe data untuk data yang sama.
ii. Enrichment Data
Enrichment data adalah proses menambahkan field baru pada suatu tabel,
sesuai dengan user requirements.
- Enrichment data MKA_Retired
Pada tabel Masa_bakti, perlu ditambahkan field MKA_Retired.
MKA_Retired ini diperlukan untuk menghitung sisa masa bakti pegawai.
MKA_Retired ini didapat dari pengurangan antara Retired_date dengan Join_date.
Sedangkan Retired_date di dapat dari penyesuaian usia pegawai, apabila
usia pegawai sudah mencapai 56 tahun, maka pada tahun tesebut pegawai
pensiun.
-Enrichment data MKA_Turnover
Pada tabel Turn_over, perlu ditambahkan field MKA_Turnover.
MKA_Turnover ini diperlukan untuk menghitung total masa bakti pegawai
selama bekerja di perusahaan,. MKA_Turnover ini didapat dari pengurangan
antara Turnover_date dengan Join_date.
iii. Joining tabel Masa_bakti dengan tabel Turn_over
Tabel Masa_bakti di-join dengan tabel Turn_over untuk mengetahui siapa
saja pegawai yang masih aktif bekerja di perusahaan dan yang sudah tidak aktif.
Proses joining ini dilakukan dengan membangun view pada kedua tabel tersebut
dengan menghubungkan field Emp_no di antara keduanya. Proses joining ini
dilakukan pada saat mengisikan data ke dalam data mart.
iv. M embuat Fact Table dan Dimension Table
25
Tabel fakta dan tabel-tabel dimensi yang dibuat ini disesuaikan dengan
metrik dan dimensi yang telah ditentukan pada user requirements.
v. Menambahkan field MKA_Now dan Sisa_MKA
Pada tabel Dim_MasaBakti, ditambahkan field baru yaitu MKA_Now, yang
merupakan total masa kerja aktif pegawai di perusahaan, dan Sisa_MKA yang
merupakan sisa masa kerja aktif yang dimiliki pegawai sebelum pegawai tersebut
pensiun.
vi. Menambahkan field ‘Salary’ yang ada di tabel Salary ke tabel
Dim_Emp_position
Proses dilakukan untuk memberikan informasi gaji setiap pegawai.
Besarnya gaji pegawai ditentukan dengan melihat pada golongan, rumpun, dan
kelompok jabatan seorang pegawai.
vii. Enrichment ‘Count’ Data
Pada tabel Fact_Award, Fact_Violation, dan Fact_Action dibutuhkan suatu
field (bernama ‘Count’) yang tiap recordnya berisi angka 1, yang mampu
menjumlahkan data berdasarkan kriteria tertentu. Misalnya, pada tabel
Fact_Action, ingin diketahui barapa jumlah pegawai yang mendapat promosi
selama tahun 2005. Untuk dapat dilakukan agregasi terhadap data tersebut, perlu
ditambahkan field of 1’s ini. Sehingga ‘Count’ data dapat dengan mudah
teragregasi berdasarkan dimensi ‘Promosi’ dan ‘2005’.
c. Loading
Apabila data-data yang telah diekstraksi selesai dibentuk melalui proses
transformasi, selanjutnya akan diisikan (load) ke dalam database DataMart HR.
Karena ini adalah proses loading untuk yang pertama kali, maka metode yang
digunakan adalah Refresh mode, pada proses ini seluruh data yang telah di-extract
dan di-transform dimasukkan ke dalam tabel-tabel fakta dan dimensi yang telah
dibuat.
26
MODEL SKEMA DATA
Model skema data yang digunakan dalam data mart ini adalah model
snowflake, karena ada beberapa tabel dimensi yang primary key-nya tidak menjadi
foreign key di fact table, melainkan menjadi foreign key di dimension table
lainnya.
Terdapat 5 fact table yang masing-masing skemanya adalah sebagai berikut.
a. Leave
Gambar 4.2 Snowflake schema untuk Leave
b. Violation
Gambar 4.3 Snowflake schema untuk Violation
27
c. Payroll
Gambar 4.4 Snowflake schema untuk Payroll
d. Award
Gambar 4.5 Snowflake schema untuk Award
e. Personnel Action
28
Gambar 4.6 Snowflake schema untuk Personnel Action
Mengakses Datamart Menggunakan “HR Application”
Dalam aplikasi ini penulis mencoba mempermudah user dengan
memberikan tampilan program yang ‘user friendly’, yaitu user diberi hak untuk
memilih sendiri data (field) apa saja yang ingin ditampilkan dan berdasarkan
kriteria apa/bagaimana data tersebut ditampilkan. Sehingga user dapat mengakses
data human resource sesuai dengan apa yang diinginkannya dengan cepat dan
mudah, tanpa perlu melakukan joining tabel yang satu dan lainnya. Data yang
akan diterima user dari aplikasi ini adalah data dalam bentuk tabel (grid) atau
grafik (chart). Selain itu, aplikasi ini juga dilengkapi fasilitas untuk membuat
laporan, baik per hari, per bulan, maupun per tahun.
29
KESIMPULAN & SARAN
Data mart yang dibangun dalam penulisan tugas akhir ini, dispesifikasikan
untuk memenuhi kebutuhan manajemen sumber daya manusia akan informasi-
informasi yang bersifat akurat, terkini, maupun yang bersifat historical. Informasi-
informasi tersebut dapat digunakan untuk membantu mempercepat pembuatan
laporan kepegawaian, seperti misalnya laporan pengeluaran perusahaan untuk gaji
pegawai selama tahun 2006 atau pada bulan-bulan tertentu yang dikehendaki.
Data-data yang digunakan dalam pembuatan data mart ini adalah data-data
pegawai PT. GMF AeroAsia pada bulan januari 2005 sampai mei 2007. Data-data
tersebut bersifat real, namun untuk data payroll (penggajian) yang disajikan
adalah data fiktif, hal ini dilakukan demi menjaga kerahasiaan perusahaan.
Beberapa manfaat yang didapat dari pembuatan data mart ini adalah:
1. Meningkatkan nilai data yang dikelola, user dapat melihat data dengan
pemahaman yang baik karena kemampuan data mart yang mampu
mengerjakan peringkasan (filtering) dan perbandingan data dengan baik.
2. Meningkatkan efisiensi memperoleh informasi, karena data mart dapat
menyajikan data yang diinginkan dengan waktu yang relative cepat dan
mudah.
3. Meningkatkan akurasi informasi yang disajikan.
Untuk pemakai yang ingin mengembangkan aplikasi ini disarankan
menggunakan pivot tabel sebagai pengganti grid sehingga data yang ditampilkan
dapat dibaca lebih baik dan lebih bermanfaat untuk proses analisis.
DAFTAR PUSTAKA 1. Abdul Razaq, Belajar Praktis Pemrograman Microsoft Visual Basic 6.0,
Penerbit INDAH, Jakarta, 2004.
2. Adi Laksono, 7 Jam Belajar Excel 2003 Untuk Orang Awam, Maxicom,
Palembang, 2004.
30
3. Alex Ferdinansyah, Perancangan Data Mart Untuk Pengelolaan Sumber
Daya Manusia, Tesis Fakultas Ilmu Komputer Universitas Indonesia,
2006.
4. Harip Santoso, Pemrograman Client-Server menggunakan SQL Server
2000 dan Visual Basic 6.0, Elex Media Komputindo, Jakarta, 2004.
5. Harip Santoso, Membuat Multiaplikasi menggunakan Visual Basic 6.0,
Elex Media Komputindo, Jakarta, 2004.
6. Ir. Yuniar Supardi, Microsoft Visual Basic Untuk Segala Tingkat, Elex
Media Komputino, Jakarta, 2006.
7. Kasmoni, Visual Basic Untuk Orang Awam, Maxicom, Palembang, 2003.
8. Melaniawati, Perancangan Data Warehouse Sistem Pembelian dan
Penjualan Pada PD Raya Makmur Motor, Skripsi Fakultas Ilmu
Komputer Universitas Gunadarma, 2001.
9. PC Media Majalah, Edisi 06/2007, Hal 100 – 103.
10. Rumus dan Fungsi Pada Microsoft Excel [Versi 97, 2000, XP, 2003],
Penerbit ANDI dan MADCOMS, Yogyakarta dan Madiun, 2004.
11. Tikno Riyanto, Pengembangan Data Warehouse Untuk Mendukung
Pengambilan Keputusan Dalam Mengelola Sumber Daya Manusia (SDM)
: Sebuah studi kasus TNI Angkatan Udara, Tesis Fakultas Ilmu Komputer
Universitas Indonesia, 2006.
12. Yuswanto dan Subari, Mengolah Database dengan SQL Server 2000,
Prestasi Pustaka, Jakarta, 2005.