BAB III ANALISA DAN PERANCANGAN 3.
BAB III ANALISA DAN PERANCANGAN SISTEM
3.1. Tinjauan Organisasi
Direktorat kebijakan sumber daya manusia mempunyai tugas melaksanakan
sebagian tugas departemen sumber daya manusia yaitu dibagian sistem informasi
sumber daya manusia, bagian pengelolaan data & sistem informasi sumber daya manusia.
Direktorat kebijakan sumber daya manusia menyelenggarakan fungsi:
1. Fungsional kebijakan pemenuhan, pemeliharaan, dan pengembangan SDM.
2. Fungsional yang menangani penyusunan perencanaan kebutuhan SDM (man power planning).
3. Fungsional manajemen talenta, serta kinerja pegawai
4. Menangani pengelolaan data dan sistem informasi SDM.
5. Menangani pengembangan sistem informasi SDM (OJK SIS, OJK SAR, OJK SIAP).
6. Fungsional yang menangani Sekretariat Pengawas Dapen OJK dan DPLK OJK.
11 http://digilib.mercubuana.ac.id/
3.2. Struktur Organisasi
Gambar 3-1. Struktur Organisasi
3.3. Analisa Sistem Berjalan
Berdasarkan latar belakang dan rumusan masalah yang ada pada Bab 1,
untuk merancang suatu sistem yang baik diperlukan beberapa persiapan untuk menentukan kebutuhan dari sistem yang akan dibuat agar sistem dapat beroperasi
sesuai dengan keinginan dan tujuan yang akan dicapai. Dan kebutuhan awal
adalah dengan membuat perancangan Integrasi Sistem Remunerasi Dengan Sistem Kepegawaian Via Web Service agar dapat dimengerti.
Saat ini, input data pegawai baru dan perubahan data pegawai diinput pada
sistem kepegawaian. Kemudian data tersebut diinput kembali pada sistem remunerasi. Hal tersebut dapat menimbulkan kesalahan pencatatan dan ketidaksesuaian data antara sistem remunerasi dengan sistem kepegawaian.
12 http://digilib.mercubuana.ac.id/
3.3.1. Use Case Diagram Sistem Berjalan
Input Pegawai
Operator Sistem Remunerasi
Lihat Data Pegawai
Lihat Datra Transaksi Pegawai
Menolak Data Transaksi Pegawai Menyetujui Data Transaksi Pegawai
Menghapus Data Transaksi Pegawai
Validator Sistem Remunerasi
Gambar 3-2. Use Case Diagram Sistem Berjalan
Berikut adalah Use-case description dari diagram diatas.
Tabel 3-1. Skenario Use Case Input Pegawai Baru
Nama Use Case Actor
Deskripsi
Nama Use Case Actor
Deskripsi
Input Pegawai Baru
Operator
Operaotor memasukkan atau menginput data
pegawai baru kedalam sistem remunerasi. Tabel 3-2. Skenario Use Case Lihat Pegawai Lihat Pegawai Baru
Operator
Melihat data pegawai mulai dari data profil, riwayat
jabatan, remunerasi, cuti, pemberhentian berdasarkan nip.
13 http://digilib.mercubuana.ac.id/
Tabel 3-3. Skenario Use Case Lihat Data Transaksi Pegawai
Nama Use Case
Lihat Data Transaksi Pegawai
Actor
Operator, Validator
Deskripsi
Mengolah data transaksi pegawai data baru dan data
berubah apakah disetujui atau ditolak.
3.3.2. Activity Diagram Sistem Berjalan Input Pegawai Sistem Kepegawaian
Operator
Input Data Pegawai
Validator
Operator
Validator
Input Data Pegawai
Document Pegawai [Draft]
Update data pegawai
Sistem Remunerasi
Approve Data
Approve Data
[Tidak] [Ya]
Simpan ke Database
Simpan ke Database
Notifikasi Operator OJK SAR
Gambar 3-3. Activity Diagram Sistem Berjalan Input Pegawai
3.4. Perancangan Sistem
Sistem yang akan dibangun dalam tugas akhir ini adalah sub modul dari
Sistem Remunerasi yang dirancang untuk berfungsi menangani integrasi dengan Sistem Kepegawaian menggunakan arsitektur web service. 3.4.1. Rancangan Model Arsitektur Sistem
Rancangan untuk arsitektur sistem yang akan dibangun yaitu sistem
kepegawaian menyediakan RESTFull web service data pegawai dan pegawai keluarga. Kemudian sistem remunerasi melalui modul sinkronisasi yang dibangun
pada tugas akhir ini, sebagai web service klien melakukan permintaan-permintaan
dengan parameter tertentu kepada sistem kepegawaian melalui web service yang
telah disediakan. Kemudian diproses secara internal pada sistem remunerasi, data yang diterima dicompare atau dibandingkan dengan database pada Sistem 14 http://digilib.mercubuana.ac.id/
Remunerasi. Data yang berbeda dan data yang baru akan dimasukkan pada daftar
transaksi yang kemudian dapat dilakukan proses persetujuan. Jika data disetujui,
maka data akan disimpan kedalam database Sistem Remunerasi. Gambar berikut adalah
gambar
Kepegawaian.
arsitektur
integrasi
Sistem
Remunerasi
Arsitektur Integrasi Sistem
dengan
Sistem
RESTFull Webservice
Web Server
Webservice WSDL
Web Server
Proses SYNC
Gambar 3-4. Arsitektur Integrasi Sistem Remunerasi dengan Sistem Kepegawaian
Sistem Remunerasi juga menyediakan web service provider yang
kemudian akan dikonsumsi oleh Sistem Kepegawaian. Fungsi yang akan dijadikan web service pada Sistem Remunerasi meliputi:
Tabel 3-4. Daftar Web Service pada Sistem Remunerasi
No Nama Web Service 1. GetDataPenghasilan
Parameter NIP
2.
GetJamsostekPegawai NIP, bulan, tahun
3.
GetDanaPensiun
NIP, bulan, tahun
4.
GetDataDPLK
Nip, bulan, tahun
Deskripsi Berfungsi untuk mendapatkan informasi penghasilan pegawai total dari komponen gaji pokok, tunjangan jabatan dan tunjangan kemahalan. Berfungsi untuk mendapatkan informasi jamsostek pegawai pada bulan dan tahun tertentu. Berfungsi untuk mendapatkan informasi DPPK (Dana Pensiun Pemberi Kerja) pegawai pada bulan dan tahun tertentu. Berfungsi untuk mendapatkan informasi DPLK (Dana Pensiun Lembaga Keuangan) pegawai pada bulan dan tahun tertentu.
15 http://digilib.mercubuana.ac.id/
3.4.2. Use Case Diagram Sistem Usulan Aktivitas yang dilakukan pengguna pada Sistem Remunerasi adalah
melakukan sinkronisasi data master pegawai. Data berubah dan data baru akan muncul setelah proses sinkronisasi data pada menu Lihat Data Transaksi Pegawai.
Kemudian pengguna melakukan persetujuan (approve) atau penolakan pada masing-masing data transaksi pegawai. Data transaksi pegawai juga dapat dihapus jika tidak ingin diubah atau ditambahkan kedalam master pegawai.
Kemudian pada Sistem Kepegawaian, aktivitas yang dilakukan pengguna
adalah Melihat Jamsostek Pegawai, Melihat Riwayat Dana Pensiun Pegawai dan
Melihat Riwayat Gaji Pegawai dimana data yang didapatkan berasal dari Sistem Remunerasi melalui Web Service. Berikut merupakan use case dari uraian tersebut diatas.
Jalankan Sinkronisasi Sinkronisasi Data
Berhentikan Sinkronisasi
Admin Sistem Remunerasi
Menolak Data Transaksi Pegawai Mengelola Data Transaksi Pegawai
Admin Sistem Kepegawaian
Menyetujui Data Transaksi Pegawai
Menghapus Data Transaksi Pegawai Validator Sistem Remunerasi
Melihat Riwayat Gaji
Mengelola Pegawai Melihat Riwayat Dana Pensiun
Melihat Jamsostek
Gambar 3-5. Use Case Diagram Integrasi Sistem Remunerasi dengan Sistem Kepegawaian
16 http://digilib.mercubuana.ac.id/
Berikut adalah Use-case description dari diagram diatas. 3.4.2.1. Use-case Sinkronisasi Data Nama Use-case : Sinkronisasi Data Aktor : Admin Sistem Remunerasi
ID : UC01
Deskripsi :
Importance Level : High Use Case Type : Essential
Didalam use case ini dijelaskan bagaimana Admin Sistem Remunerasi melakukan proses sinkronisasi data, menjalankan dan memberhentikan proses tersebut. Skenario : 7.
Pengguna menginisiasi proses sinkronisasi data
pegawai.
Pre-Conditions :
Pengguna telah login
Post-Conditions : -
3.4.2.2. Use-case Jalankan Sinkronisasi Nama Use-case : Jalankan Sinkronisasi Data Aktor : Admin Sistem Remunerasi Deskripsi :
ID : UC02
Importance Level : High Use Case Type : Essential
Use case ini merupakan use-case turunan dari use-case Sinkronisasi Data. Dalam use-case ini menjalankan proses sinkronisasi data pegawai. Skenario : 1. Admin Sistem Remunerasi menjalankan proses sinkronisasi pegawai. 2. Proses sinkronisasi berjalan. Pre-Conditions : Pengguna telah login Pengguna telah menjalankan use case sinkronisasi data
Post-Conditions : Sistem menampilkan informasi proses sinkronisasi seperti waktu mulai, waktu berakhir, lama proses. Hasil proses sinkronisasi tersimpan pada data transaksi pegawai.
17 http://digilib.mercubuana.ac.id/
3.4.2.3. Use-case Berhentikan Sinkronisasi Nama Use-case : Berhentikan Sinkronisasi
ID : UC03
Aktor : Admin Sistem Remunerasi
Importance Level : High Use Case Type : Essential
Deskripsi :
Use case ini merupakan use-case turunan dari use-case Sinkronisasi Data. Aktivitas dalam use-case ini meberhentikan proses sinkronisasi data pegawai. Skenario : 1. Admin Sistem Remunerasi memberhentikan proses sinkronisasi pegawai. 2. Proses sinkronisasi berhenti. Pre-Conditions : Pengguna telah login Pengguna telah menjalankan use case jalankan sinkronisasi data
Post-Conditions : Sistem menampilkan informasi hasil proses sinkronisasi seperti waktu mulai, waktu berakhir, lama proses. Hasil proses sinkronisasi tersimpan pada data transaksi pegawai.
3.4.2.4. Use-case Mengelola Data Transaksi Pegawai Nama Use-case : Mengelola Data Transaksi Pegawai
ID : UC04
Aktor : Admin, Validator Sistem Remunerasi Deskripsi :
Importance Level : Medium Use Case Type : Essential
Dalam use case ini dijelaskan bagaimana pengguna dapat melihat data hasil proses sinkronisasi pegawai, kemudian menyetujui (approve) atau menolak data tersebut.
Skenario : 1. Pengguna melihat data hasil proses sinkronisasi pegawai. 2. Pengguna menyetujui (approve) data pegawai, menolak atau menghapus data pegawai. Pre-Conditions :
Pengguna telah menjalankan sinkronisasi data
Post-Conditions :
Sistem menampilkan data hasil proses sinkronisasi.
3.4.2.5. Use-case Mengelola Pegawai Nama Use-case : Mengelola Pegawai
ID : UC05
Importance Level :
18 http://digilib.mercubuana.ac.id/
Aktor : Admin Sistem Kepegawaian Deskripsi :
Medium
Use Case Type : Essential
Dalam use case ini dijelaskan bagaimana pengguna sistem kepegawaian dapat melihat riwayat gaji, melihat dana pensiun, melihat jamsostek pegawai. Skenario : 1. Pengguna melihat data riwayat gaji pegawai. 2. Pengguna melihat data dana pensiun pegawai. 3. Pengguna melihat jamsostek pegawai. Pre-Conditions :
Pengguna telah login
Post-Conditions : -
19 http://digilib.mercubuana.ac.id/
3.4.3. Activity Diagram
Diagram aktivitas ini menjelaskan proses input atau perubahan data
pegawai pada sistem kepegawaian sampai berhasil disimpan, kemudian dilakukan proses sinkronisasi data pada sistem remunerasi.
Input Data Pegawai
Validator Sistem Remunerasi
Operator Sistem Remunerasi
Validator Sistem Kepegawaian
Update data pegawai
Document Pegawai [Draft]
Approve Data [Tidak]
[Ya]
Simpan ke Database
Sinkronisasi Pegawai Simpan Data Transaksi Pegawai
Approve Data
Simpan ke Database
Gambar 3-6. Activity Diagram Sistem Usulan Sinkronisasi Data Pegawai
20 http://digilib.mercubuana.ac.id/
Kemudian pada diagram aktivitas dibawah menjelaskan proses pencarian
data gaji, dana pensiun dan jamsostek pegawai yang terdapat pada fungsi web service.
Masukkan parameter (Hasil pencarian tidak ada)
(Hasil pencarian ada)
Tampilkan hasil
Gambar 3-7. Activity Diagram Pencarian Gaji, DanaPensiun dan Jamsostek pada Web Service
21 http://digilib.mercubuana.ac.id/
3.4.4. Sequence Diagram
Dalam proses sinkronisasi data pegawai, pengguna menginisialisasi
dengan menjalankan fungsi startSync() pada sistem, kemudian sistem akan melakukan scanning pada data yang diperoleh dari web service sistem kepegawaian, yang kemudian dimasukkan pada Queue(Antrian). Kemudian hasil dari Queue tersebut diproses dan disimpan kedalam database.
<
> Pegawai Sync Scanner
<<Sync Manager>>
Admin Sistem Remunerasi
StartSync()
Scanning
SyncScanningQueue loop
[for each po]
ClearObject
SyncProcessQueue
<>
callws(param)
Objectlist
_SyncQueue.Enqueue(po)
<>
<> Pegawai Comparer
data
loop
[for each obj]
DeserializeObject(data)
loadData(data)
compare(data1,data2) resultItem
_op = _SyncQueue.Dequeue()
addTask(item) _op.DoOperation()
validate() save() commitTransaction()
Gambar 3-8. Sequence Diagram Proses Sinkronisasi
22 http://digilib.mercubuana.ac.id/
3.4.5. Class Diagram
Class diagram yang ditampilkan dibawah adalah first cut class diagram
yang menggambarkan relasi antar class pada proses sinkronisasi pegawai.
PegawaiHRIS
ComparerResultItem
nip : String nip_lama : String nm_peg : String kd_jns_kelamin : String kd_agama : String nm_agama : String tgl_lahir : Date tmt_ojk : Date tmt_lembaga_asal : Date kd_status_perkawinan : String status_keaktifan : String kd_jabatan : String kd_level_jabatan : String grade : Integer skala_gaji : Integer kode_unit_kerja : Integer
Field : String Vvalues1 : Object Values2 : Object ErrorMessage : String 1..*
<>
ISyncComparer
+compare(_object1, _object2, _err) : void
PegawaiComparer
1
-_Fields():String
+compare(_object1, _onject2, _err) : void
memiliki 1..*
nip : String nama_keluarga : String tgl_lahir_keluarga : Date tgl_status_perkawinan : Date nm_kelamin_peg : String hub_keluarga : String ke : Integer
SyncUtils
- menggunakan
-dateString : String
1
+getPegawaiFromJSON(jo) : PegawaiHRIS +getMasterKeluargaFromJSON(jO) : MasterKeluarga +getTipePegawai(kd_status_peg) : Long +getStatusPerkawinan(kd_status) : Boolean +getIsCerai(kd_status_perkawinan : Boolean +getStatusKeaktifanPegawai(kd) : Long
PegawaiSynchronizationScanner -_SyncCollection : MultikeyCollection -_Comparer : PegawaiComparer -_itemPerPage : Integer -_start : Integer -_end : Integer -_scanCount : Integer = 0 -_isScanning : Boolean = false +StartScan() : void +StopScan() : void +Scanning() : void -StartScanning(_start) : Integer -LoadData(data) : Integer +AddTask(item) : void 1..*
1
1
1
1
MasterKeluarga
1
1
+DoOperation()
SyncOperation
<<Enumeration>>
+DoOperation() : void
- menggunakan
1
SyncManager
-_SyncThread : Thread -_ScanThread : Thread -_pss : PegawaiSyncScanner
ISyncOperation
+SetProperty(propertyName, value):void +GetProperty(propertyName) : Object
1
- melakukan
- menggunakan
<>
ReflectionObject
1
PegawaiSyncItemOption DestinationCreate DestinationModified NoOperation
PegawaiSyncItem -_sourcePegawai : PegawaiHRIS -_cRItem : Dictionary -_option : PegawaiSyncItemOption
1
+DoOperation() : void -LoadData(datasource) : void -Validate(pegawai) : void -setData(pegawai, dataSource) : void
+Start : void +Stop : void -StartScanning : void -StartSyncing : void
Gambar 3-9. Class Diagram Entity Pegawai Sinkronisasi
23 http://digilib.mercubuana.ac.id/
1
3.4.6. Struktur Database
Struktur basis data yang ditampilkan dibawah ini merupakan struktur tabel
yang digunakan dalam integrasi antara sistem remunerasi dengan sistem kepegawaian. Nama Tabel
:
Master_Pegawai
:
Data Master Pegawai
Media
:
Primary Key
:
Isi
Nama Kolom
Harddisk NIP
Tabel 3-5. Struktur Tabel Master Pegawai Tipe Data
Keterangan
nip_calon
varchar(10)
nip_lembaga_asal
varchar(10)
nama_pegawai
varchar(100)
Berisi informasi Nomor Induk Pegawai sebelum diangkat menjadi pegawai tetap Berisi informasi Nomor Induk Pegawai dari Lembaga Asal Berisi informasi nama pegawai
datetime
Berisi informasi tanggal lahir pegawai
nip
varchar(10)
nama_pegawai_lengkap
varchar(255)
date_meninggal
datetime
is_pria
bit
is_cerai
bit
id_agama id_tipe_pegawai
date_lahir
status_kawin
id_grade
bit
Berisi informasi Nomor Induk Pegawai
Berisi informasi nama lengkap pegawai
Berisi informasi tanggal meninggal pegawai, jika pegawai yang bersangkutan meninggal dunia Berisi informasi jenis kelamin pegawai
Berisi informasi status perkawinan Berisi
informasi
status
bigint
Berisi
informasi
id
bigint
Berisi informasi jenis pegawai tersebut.
bigint
kode_satker
varchar(25)
kode_jabatan
varchar(8)
pegawai
perceraian
agama
mengambil dari tabel agama
yang
Pegawai tetap, calon pegawai atau PKWT
Berisi informasi grade pegawai
Berisi informasi kode satker pegawai
yang berelasi ke tabel Master_Satker
Berisi informasi kode jabatan pegawai
24 http://digilib.mercubuana.ac.id/
id_master_status_pegawai
bigint
yang berelasi ke tabel Master_Jabatan
Berisi informasi status satker pegawai yang
berelasi
Master_Status_Pegawai
ke
tabel
nama_rekening_bank
varchar(100)
id_master_bank
bigint
Berisi informasi bank yang berelasi
email
varchar(255)
Berisi informasi email
date_end
datetime
Berisi informasi tanggal berhenti bekerja
no_ktp
varchar(50)
Berisi informasi nomor KTP
no_rekening_bank
date_start no_npwp date_created
date_updated date_deleted
varchar(20)
datetime
varchar(50) datetime
datetime
datetime
created_by
varchar(50)
authorized_by
varchar(50)
updated_by
varchar(50)
deleted_by
varchar(50)
Berisi informasi nama rekening bank
Berisi informasi no rekening bank
dengan tabel Master_Bank
Berisi informasi tanggal mulai bekerja Berisi informasi nomor NPWP
Berisi informasi tanggal data dibuat
Berisi informasi tanggal data terakhir
diupdate
Berisi informasi tanggal data dihapus
Berisi informasi user yang membuat
data
Berisi informasi user yang menyetujui
data
Berisi informasi user yang mengupdate
data
Berisi informasi user yang menghapus
data
25 http://digilib.mercubuana.ac.id/
Tabel 3-6. Struktur Table Master Pegawai Anak
Nama Kolom
Tipe Data
id_pegawai_anak
bigint
id_pegawai_pasangan
bigint
nip
varchar(10)
nama_anak
varchar(50)
is_pria
bit
is_nafkah
bit
date_lahir
datetime
Keterangan
Berisi informasi ID Pegawai Anak yang unik dan Autoincrement Berisi informasi ID Pegawai Pasangan yang berelasi dengan tabel Pegawai Pasangan Berisi informasi dari NIP pegawai yang berelasi dengan tabel Master Pegawai Berisi informasi nama anak Berisi informasi jenis kelamin
Berisi informasi apakah ditanggung atau tidak Berisi informasi tanggal lahir anak
date_meninggal
datetime
Berisi informasi tanggal meninggal
is_deleted
bit
Berisi informasi apakah data tersebut
date_created
datetime
Berisi informasi tanggal data tersebut
date_updated
datetime
date_deleted
datetime
date_authorized
datetime
created_by
varchar(50)
updated_by
varchar(50)
deleted_by
varchar(50)
authorized_by
varchar(50)
anak_ke
int
anak
dihapus atau tidak dicreate
Berisi informasi tanggal data tersebut
diupdate
Berisi informasi tanggal data tersebut
dihapus
Berisi informasi tanggal data tersebut
disetujui
Berisi informasi user yang membuat
data
Berisi informasi user yang mengupdate
data
Berisi informasi user yang menghapus
data
Berisi informasi user yang menyetujui
data
Berisi informasi anak ke berapa
26 http://digilib.mercubuana.ac.id/
Tabel 3-7. Struktur Tabel Master Pegawai Pasangan
Nama Kolom
Tipe Data
Keterangan
id_pegawai_pasangan
Bigint
nip
varchar(10)
nama_pasangan
varchar(50)
is_nafkah
bit
date_meninggal
datetime
Berisi informasi apakah ditanggung atau tidak Berisi informasi tanggal lahir pasangan Berisi informasi tanggal meninggal
is_deleted
bit
Berisi informasi apakah data tersebut
date_created
datetime
Berisi informasi tanggal data tersebut
date_updated
datetime
Berisi informasi tanggal data tersebut
date_deleted
datetime
is_pria
date_lahir
bit
datetime
Berisi informasi ID Pegawai Pasangan yang unik dan Autoincrement Berisi informasi dari NIP pegawai yang berelasi dengan tabel Master Pegawai Berisi informasi nama pegawai Berisi informasi jenis kelamin
pasangan
dihapus atau tidak
dicreate
diupdate
Berisi informasi tanggal data tersebut dihapus
27 http://digilib.mercubuana.ac.id/