BAB III
PERANCANGAN DAN PEMBUATAN SISTEM
3.1 DESKRIPSI KEBUTUHAN SISTEM
Pada dasarnya sistem yang dibangun merupakan sebuah perangkat lunak yang memiliki fungsi melakukan query, baik itu query fuzzy maupun query bukan fuzzy yang dilakukan user. Deskripsi kebutuhan sistem meliputi perancangan data dan perancangan sistem. 3.1.1 Perancangan Data
Sistem yang akan dibangun merupakan sistem basisdata fuzzy (Fuzzy Database System). Karena model yang digunakan adalah model Tahani, maka relasi yang ada dalam basisdata masih bersifat standar, dengan penekanan fuzzy pada beberapa kolom pada tabel-tabel yang ada pada basisdata tersebut.
a. Kebutuhan Input
Kebutuhan input sistem digolongkan menjadi 2, yaitu input fuzzy dan input non fuzzy.
1. Input Fuzzy, terdiri dari : Data – data tenaga ahli yang menyangkut kompetensi atau kriteria :
ACH ( Achievement Orientation )
CO ( Concern for Order, Quality, and Accuracy ) INF ( Information Seeking )
CSO ( Customer Service Orientation ) IU ( Interpersonal Understanding ) RB ( Relation Building )
IMP ( Impact and Influence ) AT ( Analytical Thinking ) CT ( Conceptual Thinking ) INT ( Initiative )
DEV ( Developing Others )
DIR ( Directiveness : Assertiveness & Use of Positional Power )
TW ( Teamwork & Cooperation ) TL ( Teamleadership )
MS-POS ( Planning and Organizing Skill ) TS-IS ( Information System )
TS-Eng ( English )
TS-LAW ( Law ) TS-TA ( Tata Laksana )
TS-FA ( Finance and Accounting ) TS-CM ( Construction Method ) TS-AC ( Administration Contract ) TS-CE ( Cost Estimation )
TS-LAB ( Laboratory ) TS-SV ( Survey )
TS-TD ( Technical Drawing ) TS-ED ( Engineering Design ) TS-MAR ( Marketing ) TS-PRO (Procurement )
2. Input non-fuzzy terdiri dari FE ( Formal Education ). b. Kebutuhan Output
Output sistem berupa rekomendasi tenaga ahli yang sesuai dengan kriteria yang diinginkan.
3.1.2 Perancangan Sistem
Secara umum sistem yang akan dibuat pada system pendukung keputusan pemilihan tenaga ahli ini dapat digambarkan melalui diagram arus data dan perancangan database yang akan digunakan.
3.1.2.1 Diagram Arus Data
Penggunaan Diagram Arus Data bertujuan untuk memudahkan dalam melihat arus data dalam sistem.
a. Diagram Konteks Sistem
Diagram konteks sistem seperti terlihat pada gambar di bawah ini :
Ada dua entitas luar yang berhubungan dengan sistem ini, yaitu personalia dan pegawai. Dari entitas personalia, sistem fuzzy memperoleh data-data master yang meliputi data tenaga ahli, data batas himpunan fuzzy, dan data jenis proyek. Selain itu akan diperoleh input data proyek dan tenaga ahli yang diperlukan. Selanjutnya sistem fuzzy akan memberikan keluaran sistem kepada entitas personalia berupa rekomendasi tenaga ahli yang sesuai dengan kriteria yang diinginkannya untuk pengerjaan suatu proyek. Sedangkan pegawai hanya dapat melihat hasil tenaga ahli yang telah dipilih oleh personalia untuk pengerjaan proyek.
b. Diagram Arus Data
Diagram arus data level 1 untuk sistem ini seperti terlihat pada gambar 3.2. Diagram arus level 1 terdiri dari tujuh proses, yaitu proses pemasukan data-data tenaga ahli, proses pemasukan batas himpunan fuzzy, proses pemasukan data jenis proyek,
proses penghitungan derajat keanggotaan, proses pemasukan data proyek yang sekaligus pemilihan tenaga ahli yang diinginkan, proses penghitungan fire strength, dan proses melihat tenaga ahli pilihan untuk pengerjaan proyek .
o Pada proses pemasukan data tenaga ahli, personalia memasukkan data tenaga ahli kemudian data tenaga ahli disimpan dalam tabel tenaga_ahli.
o Pada proses pemasukan batas himpunan fuzzy, personalia memasukkan data batas himpunan fuzzy kemudian data tersebut disimpan dalam tabel batas_himp.
o Pada proses pemasukan data jenis proyek, personalia memasukkan data jenis proyek kemudian data tersebut disimpan dalam tabel jenis_proyek.
o Pada proses penghitungan derajat keanggotaan mengambil data tenaga ahli berupa nilai kompetensi tenaga ahli dari tabel tenaga_ahli dan data batas himpunan berupa nilai batas himpunan dari tabel batas_himp, selanjutnya diperoleh hasil berupa nilai mu dari setiap nilai kompetensi tenaga ahli yang kemudian disimpan dalam tabel mu. o Selanjutnya proses mamasukkan data proyek yang di
dalamnya juga memasukkan pilihan tenaga ahli yang diinginkan. Proses ini dilakukan juga oleh personalia. Pada proses ini mengambil data jenis proyek dari tabel jenis_proyek. Kemudian terjadilah proses perhitungan fire strength. Dalam proses ini mengambil data dari tabel mu berupa nilai mu dari kriteria tenaga ahli yang diinginkan kemudian personalia akan mendapatkan satu atau lebih nama tenaga ahli yang berkaitan dengan kriteria yang diinginkan tersebut beserta fire strength yang menunjukkan seberapa besar rekomendasi yang diberikan oleh sistem ( fire strength ini memiliki nilai berkisar antara [0:1] ). Nilai 1 menunjukkan rekomendasi penuh, apabila fire strength bernilai mendekati 0, maka tenaga ahli tersebut semakin tidak direkomendasikan.
o Selanjutnya dari system memberikan keluaran untuk personalia berupa tenaga ahli rekomendasi
o Pada proses pemilihan tenaga ahli, personalia memilih salah satu tenaga ahli dari beberapa tenaga ahli rekomendasi dan tenaga ahli pilihan tersebut disimpan dalam tabel proyek.
o Sedangkan proses melihat tenaga ahli pilihan untuk pengerjaan proyek dilakukan oleh user biasa yaitu pegawai, dimana user tersebut hanya bisa melihat tenaga ahli pilihan untuk pengerjaan proyek.
3.1.2.2 Perancangan Basisdata
Karena pada aplikasi ini menggunakan fuzzy database model Tahani, maka struktur database yang digunakan adalah struktur database relasional. Tabel-tabel yang digunakan dalam menyelesaikan aplikasi ini adalah :
1. Struktur Tabel Tabel tenaga_ahli
Tabel tenaga_ahli digunakan untuk menyimpan data-data atribut tenaga ahli.
Tabel 3.1 tenaga_ahli
Nama Field Type Data Lebar Keterangan
nip* Integer 15 nomor induk pegawai
nama Varchar 25 nama
ach Double Achievement
Orientation
co Double Concern for Order,
Quality, and Accuracy
inf Double Information Seeking
cso Double Customer Service
Orientation
iu Double Interpersonal
Understanding
rb Double Relation Building
imp Double Impact and Influence
at Double Analytical Thinking
ct Double Conceptual Thinking
int Double Initiative
dev Double Developing Others
dir Double Directiveness :
Assertiveness & Use of Positional Power
tw Double Teamwork &
Cooperation
tl Double Teamleadership
ms_pos Double Managerial Skill -
Planning and Organizing Skill
ts_is Double Technical Skill -
ts_eng Double Technical Skill - English
ts_hr Double Technical Skill -
Human Resources
ts_law Double Technical Skill - Law
ts_ta Double Technical Skill - Tata
Laksana
ts_fa Double Technical Skill -
Finance and Accounting
ts_cm Double Technical Skill -
Construction Method
ts_ac Double Technical Skill -
Administration Contract
ts_ce Double Technical Skill - Cost
Estimation
ts_lab Double Technical Skill -
Laboratory
ts_sv Double Technical Skill -
Survey
ts_td Double Technical Skill -
Technical Drawing
ts_ed Double Technical Skill -
Engineering Design
ts_mar Double Technical Skill -
Marketing
ts_pro Double Technical Skill -
Procurement
fe Varchar 5 Formal Education
Tabel batas_himp
Tabel batas_himp digunakan untuk menyimpan data-data batas himpunan fuzzy.
Tabel 3.2 batas_himp
Nama Field Type Data Lebar Keterangan batas* Varchar 15 Nama batas himp. fuzzy
Tabel mu
Tabel mu digunakan untuk menyimpan data-data tentang derajat keanggotaan suatu criteria tenaga ahli tertentu pada himpunan fuzzy tertentu.
Tabel 3.3 Mu
Nama Field Type Data Lebar Keterangan nip* Integer 15 Nomor induk pegawai
m_ach1 Float - mu untuk ach BURUK
m_ach2 Float - mu untuk ach
SEDANG
m_ach3 Float - mu untuk ach BAIK
m_co1 Float - mu untuk co BURUK
m_co2 Float - mu untuk co SEDANG
m_ co3 Float - mu untuk co BAIK
m_inf1 Float - mu untuk inf BURUK
m_ inf2 Float - mu untuk inf SEDANG
m_ inf3 Float - mu untuk inf BAIK
m_cso1 Float - mu untuk cso BURUK
m_ cso2 Float - mu untuk cso
SEDANG
m_ cso3 Float - mu untuk cso BAIK
m_ cso4 Float - mu untuk cso
ISTIMEWA
m_ iu1 Float - mu untuk iu BURUK
m_ iu2 Float - mu untuk iu SEDANG
m_ iu3 Float - mu untuk iu BAIK
m_rb1 Float - mu untuk rb BURUK
m_ rb2 Float - mu untuk rb SEDANG
m_ rb3 Float - mu untuk rb BAIK
m_imp1 Float - mu untuk imp BURUK
m_ imp2 Float - mu untuk imp
SEDANG
m_ imp3 Float - mu untuk imp BAIK
m_at1 Float - mu untuk at BURUK
m_ at2 Float - mu untuk at SEDANG
m_ at3 Float - mu untuk at BAIK
m_ct1 Float - mu untuk ct BURUK
m_ct3 Float - mu untuk ct BAIK
m_int1 Float - mu untuk int BURUK
m_int2 Float - mu untuk int SEDANG
m_int3 Float - mu untuk int BAIK
m_dev1 Float - mu untuk dev BURUK
m_dev2 Float - mu untuk dev
SEDANG
m_dev3 Float - mu untuk dev BAIK
m_dir1 Float - mu untuk dir BURUK
m_dir2 Float - mu untuk dir SEDANG
m_dir3 Float - mu untuk dir BAIK
m_tw1 Float - mu untuk tw BURUK
m_tw2 Float - mu untuk tw SEDANG
m_tw3 Float - mu untuk tw BAIK
m_tl1 Float - mu untuk tl BURUK
m_tl2 Float - mu untuk tl SEDANG
m_tl3 Float - mu untuk tl BAIK
m_mspos1 Float - mu untuk ms-pos
BURUK
m_mspos2 Float - mu untuk ms-pos
SEDANG
m_mspos3 Float - mu untuk ms-pos BAIK
m_tsis1 Float - mu untuk ts-is BURUK
m_tsis2 Float - mu untuk ts-is
SEDANG
m_tsis3 Float - mu untuk ach BAIK
m_tseng1 Float - mu untuk ts-eng BURUK m_tseng2 Float - mu untuk ts-eng
SEDANG
m_tseng3 Float - mu untuk ts-eng BAIK
m_tshr1 Float - mu untuk ts-hr BURUK
m_tshr2 Float - mu untuk ts-hr
SEDANG
m_tshr3 Float - mu untuk ts-hr BAIK m_tslaw1 Float - mu untuk ts-law
BURUK m_tslaw2 Float - mu untuk ts-law
m_tslaw3 Float - mu untuk ts-law BAIK
m_tsta1 Float - mu untuk ts-ta BURUK
m_tsta2 Float - mu untuk ts-ta
SEDANG
m_tsta3 Float - mu untuk ts-ta BAIK
m_tsfa1 Float - mu untuk ts-fa BURUK
m_tsfa2 Float - mu untuk ts-fa
SEDANG
m_tsfa3 Float - mu untuk ts-fa BAIK
m_tscm1 Float - mu untuk ts-cm
BURUK
m_tscm2 Float - mu untuk ts-cm
SEDANG
m_tscm3 Float - mu untuk ts-cm BAIK
m_tsac1 Float - mu untuk ts-ac
BURUK
m_tsac2 Float - mu untuk ts-ac
SEDANG
m_tsac3 Float - mu untuk ts-ac BAIK
m_tsce1 Float - mu untuk ts-ce
BURUK
m_tsce2 Float - mu untuk ts-ce
SEDANG
m_tsce3 Float - mu untuk ach BAIK
m_tslab1 Float - mu untuk ts-lab BURUK m_tslab2 Float - mu untuk ts-lab
SEDANG
m_tslab3 Float - mu untuk ts-lab BAIK
m_tssv1 Float - mu untuk ts-sv
BURUK
m_tssv2 Float - mu untuk ts-sv
SEDANG
m_tssv3 Float - mu untuk ts-sv BAIK
m_tstd1 Float - mu untuk ts-td BURUK
m_tstd2 Float - mu untuk ts-td
SEDANG
m_tstd3 Float - mu untuk ts-td BAIK
BURUK
m_tsed2 Float - mu untuk ts-ed
SEDANG
m_tsed3 Float - mu untuk ts-ed BAIK m_tsmar1 Float - mu untuk ts-mar
BURUK m_tsmar2 Float - mu untuk ts-mar
SEDANG
m_tsmar3 Float - mu untuk ts-mar BAIK m_tspro1 Float - mu untuk ts-pro
BURUK m_tspro2 Float - mu untuk ts-pro
SEDANG
m_tspro3 Float - mu untuk ts-pro BAIK
m_fe Float - mu untuk fe, sma 0,
diploma 0.35, S1 0.75, S2 1
Tabel proyek
Tabel proyek digunakan untuk menyimpan data berupa nama proyek beserta tenaga ahli pilihan yang mengerjakan proyek tersebut.
Tabel 3.4 proyek
Nama Field Type Data Lebar Keterangan
id* Varchar 15 Id proyek
nama_proyek Varchar 25 Nama User id_jenis** Integer 10 Password manpro Integer 15 Manajer Proyek k_komersial Integer 15 Kasie Komersial k_she Integer 15 Kasie Safety Health
Environment ( SHE ) k_kontrak Integer 15 Kasie Administrasi
Kontrak
k_uang Integer 15 Kasie Keuangan & Administrasi k_engineering Integer 15 Kasie Engineering k_konstruksi Integer 15 Kasie Konstruksi
Assurance
k_qs Integer 15 Kasie Quantity Survey k_pengadaan Integer 15 Kasie Pengadaan
Tabel jenis_proyek
Tabel jenis_proyek digunakan untuk menyimpan jenis (unit bisnis) proyek.
Tabel 3.5 jenis_proyek
Nama Field Type Data Lebar Keterangan id_jenis* Integer 15 Id jenis proyek jenis Varchar 25 Jenis (unit bisnis)
proyek *) Kunci Primer **) Kunci Tamu
2. Relasi Tabel
Tabel jenis_proyek berelasi dengan tabel proyek dengan relasi 1:M (one to many) pada field id_jenis. Sedangkan Tabel tenaga_ahli berelasi dengan tabel mu dengan relasi 1:1 (one to one) pada field nip. Tabel batas_himp tidak berelasi dengan tabel manapun, akan tetapi nilai batas himpunan dalam table ini digunakan untuk proses penghitungan derajat keanggotaan dari table mu. Untuk relasi antara tabel proyek dan tabel tenaga_ahli adalah isi field manpro, k_komersial, k_she, k_kontrak, k_uang, k_engineering, k_instruksi, k_qa, k_qs, k_pengadaan dari tabel proyek merupakan nip dari tabel tenaga_ahli.
Gambar 3.3 Relasi Tabel 3.1.2.3 Fungsi Keanggotaan
Pada proyek ini, setiap variabel fuzzy menggunakan fungsi keanggotaan bahu dan segitiga sebagai pendekatan untuk memperoleh derajat keanggotaan suatu nilai dalam suatu himpunan fuzzy.
Variabel ACH, CO, INF, CSO, IU, RB, IMP, AT, CT, INT, DEV, DIR, TW, TL, MS-POS, IS, ENG, HR, LAW, TS-TA, TS-FA, TS-CM, TS-AC, TS-CE, TS-LAB, TS-SV, TS-TD, TS-ED, TS-MAR, dan TS-PRO mempunyai 3 himpunan fuzzy, yaitu : BURUK, SEDANG, dan BAIK. Himpunan BURUK dan BAIK menggunakan pendekatan fungsi keanggotaan yang berbentuk bahu, sedangkan himpunan SEDANG menggunakan pendekatan fungsi keanggotaan berbentuk segitiga (Gambar 3.5).
Gambar 3.4 Fungsi Keanggotaan
50 75
BURUK SEDANG BAIK
25 100 1 M 1 1 1 µ [x] 0 manpro = nip
Fungsi Keanggotaan : µ BURUK [x] = 50 ; 0 50 25 ; 25 50 25 ; 1 x x x x µ SEDANG [x] = 75 50 ; 25 75 50 25 ; 25 25 75 25 ; 0 x x x x x atau x µ BAIK [x] = 75 ; 1 75 50 ; 25 50 50 ; 0 x x x x
Catatan : Nilai dari masing-masing variabel dapat diubah sesuai dengan kebutuhan dan perubahan nilai harus sesuai dengan aturan fuzzy.
Sedangkan untuk input non fuzzy seperti variable Formal Education (FE) kita tidak perlu menentukan fungsi keanggotaannya, kita bisa menggunakan rumus himpunan crisp sebagai berikut :
SMA : 0.2
Diploma : 0.35
S1 : 0.75
S2 : 1
3.2. PERANCANGAN PROGRAM
Setelah perancangan selesai dibuat, maka selanjutnya perancangan tersebut diimplemetasikan dalam aplikasi dengan membuat programnya yang meliputi pembuatan program untuk koneksi database, proses memasukkan data tenaga ahli, proses penghitungan nilai derajat keanggotaan, dan proses memasukkan kriteria tenaga ahli yang dicari. Pembuatan program di sini menggunakan bahasa pemrograman PHP[5].
3.2.1 Koneksi Database
Untuk pengambilan data pada database, dibutuhkan koneksi antara program dengan database. Dalam hal ini database yang digunakan adalah database dengan format MySQL. Berikut ini adalah cara koneksi ke database pada file – file PHP
<?php
#*****************Koneksi ke mysql*******************# $host_mysql = "localhost"; //hostname MySQl
$user_mysql = "root"; //user mysql $password_mysql = ""; //password mysql $database_myql = "dss"; //nama database //koneksi
$conn = mysql_connect($host_mysql, $user_mysql, $password_mysql); if($conn) { //select database $select=mysql_select_db($database_myql, $conn); if(!$select){ echo mysql_error(); }
//echo "Koneksi ke MySQL Sukses<br>"; }
?>
Pada baris kedua merupakan inisialisasi dari nama hostname, kemudian pada baris ketiga inisialisasi username, baris keempat untuk inisisalisasi password dan baris kelima adalah inisialisasi dari nama database.
Pada baris ketujuh adalah pendeklarasian var. $conn yang digunakan untuk menyimpan hasil pengaksesan server database dengan menggunakan fungsi php mysql_connect() didalamnya kita isi dengan hostname, username dan password. Sedangkan baris kedua adalah pengaksesan database dengan menggunakan fungsi php mysql_select_db() didalamnya kita isi dengan nama database.
3.2.2 Proses Memasukkan Data Tenaga Ahli
Pada proses memasukkan data tenaga ahli ini, administrator diharuskan mengisikan data pada form input data tenaga ahli yang meliputi NIP, nama, nilai kompetensi yang terdiri dari lima kategori yaitu kategori QUALITY, kategori PEOPLE, kategori INDIVIDUAL EFFECTIVENESS, kategori MANAGERIAL, kategori KNOW HOW yang terdiri dari sub kategori MANAGERIAL SKILL dan TECHNICAL SKILL.
Setiap nilai kompetensi tersebut harus diisi dengan nilai antara 0 sampai dengan 100. Selanjutnya data tersebut akan disimpan dalam table tenaga_ahli.
3.2.3 Proses Penghitungan Nilai Derajat Keanggotaan
Di dalam proses memasukkan data tenaga ahli juga terjadi proses penghitungan nilai derajat keanggotaan. Dari nilai kompetensi yang dimasukkan akan dihitung nilai derajat keanggotaannya dan nilai derajat keanggotaan tersebut akan disimpan dalam table mu.
Di bawah ini merupakan script untuk menghitung nilai derajat keanggotaan dari variable ACH. Script ini juga digunakan untuk menghitung nilai derajat keanggotaan dari variable lainnya dengan catatan nama variable diganti.
//cari mu ach $m_ach1=0; $m_ach2=0; $m_ach3=0; if($ach!=''){
if($var_buruk != 0 && $var_sedang !=0 && $var_baik !=0){ Lanjutan Gambar 3.6 Interface untuk Proses Input Data Tenaga Ahli
//ach buruk
if($ach<=$var_buruk) $m_ach1=1;
if($var_buruk<=$ach && $ach<=$var_sedang) $m_ach1=($var_sedang-$ach)/($var_sedang-$var_buruk);
if($ach>=$var_sedang) $m_ach1=0;
//ach sedang
if($ach<=$var_buruk || $ach >= $var_sedang) $m_ach2=0;
if($var_buruk<=$ach && $ach<= $var_sedang) $m_ach2=($ach-$var_buruk)/($var_sedang-$var_buruk);
if($var_sedang<=$ach && $ach<=$var_baik) $m_ach2=($var_baik-$ach)/($var_baik-$var_sedang); //ach baik if($ach<=$var_sedang) $m_ach3=0;
if($var_sedang<=$ach && $ach<=$var_baik) $m_ach3=($ach-$var_sedang)/($var_baik-$var_sedang); if($ach>=$var_baik) $m_ach3=1; } }
Sedangkan untuk variable Formal Education (FE) yang merupakan input non fuzzy, script yang digunakan untuk mengimplementasikan rumus himpunan crisp yang digunakan adalah sebagai berikut :
if($fe=='SMA') $m_fe=0.2; else if($fe=='Diploma') $m_fe=0.35; else if($fe=='S1') $m_fe=0.75; else if($fe=='S2') $m_fe=1; else $m_fe=0;
3.2.4 Proses Memasukkan Kriteria Tenaga Ahli yang Dicari Dalam proses ini kepala bagian personalia memasukkan data proyek dan tenaga ahli yang dibutuhkan dalam proyek tersebut. Setelah ditekan tombol submit maka dari sistem akan memberikan output daftar tenaga ahli beserta nilai rekomendasi untuk jabatan yang dipilih.
Gambar 3.9 Interface untuk Proses Input Data Tenaga Ahli Gambar 3.8 Script rumus himpunan crisp variable fe
3.2.5 Proses Menghitung Fire Strength ( Nilai Rekomendasi ) Nilai fire strength adalah nilai persentase seberapa besar tenaga ahli tersebut direkomendasikan untuk sebuah jabatan. Nilai fire strength antara 0 dan 1.
Sebagai contoh, berikut penghitungan nilai fire strength untuk jabatan “Manajer Proyek”.
if($baris == "Manajer Proyek"){
$hasilfs = mysql_query ( "SELECT m_ach3, m_co3, m_inf3, m_iu3, m_rb3, m_imp3, m_at3, m_ct3, m_int3, m_dev3, m_dir3, m_tw3, m_tl3, m_mspos3, m_fe from mu where nip = $nip" );
$resultfs = mysql_fetch_array($hasilfs);
$nilaifs = array ($resultfs['m_ach3'], $resultfs['m_co3'], $resultfs['m_inf3'], $resultfs['m_iu3'], $resultfs['m_rb3'], $resultfs['m_imp3'], $resultfs['m_at3'], $resultfs['m_ct3'], $resultfs['m_int3'], $resultfs['m_dev3'], $resultfs['m_dir3'], $resultfs['m_tw3'], $resultfs['m_tl3'], $resultfs['m_mspos3'], $resultfs['m_fe']);
echo "<td>".min($nilaifs)."</td>"; }
Nilai rekomendasi untuk jabatan ”Manajer Proyek” diperoleh dengan mencari nilai minimum dari nilai derajat keanggotaan untuk himpunan baik variabel ach (m_ach3), variabel co (m_co3), variabel inf (m_inf3), variabel iu (m_iu3), variabel rb (m_rb3), variabel imp (m_imp3), variabel at (m_at3), variabel ct (m_ct3), variabel int (m_int3), variabel dev (m_dev3), variabel dir (m_dir3), variabel tw (m_tw3), variabel tl (m_tl3), variabel ms-pos (m_mspos3), dan nilai crisp dari variabel fe (m_fe).
Di bawah ini adalah script penghitungan nilai fire strength untuk jabatan ”Kasie. Komersial”.
else if($baris=="Kasie. Komersial"){
$hasilfs=mysql_query("SELECT m_ach3, m_co3, m_cso3, m_rb3, m_at3, m_ct3, m_int3, m_dev3, m_dir3, m_tw3, m_tl3, m_tsis3, m_tseng3, m_tsce3, m_fe from mu where nip=$nip");
Gambar 3.10 Script Penghitungan Nilai Rekomendasi untuk “Manajer Proyek”
$resultfs = mysql_fetch_array($hasilfs);
$nilaifs = array ($resultfs['m_ach3'], $resultfs['m_co3'], $resultfs['m_cso3'], $resultfs['m_rb3'], $resultfs['m_at3'], $resultfs['m_ct3'], $resultfs['m_int3'], $resultfs['m_dev3'], $resultfs['m_dir3'], $resultfs['m_tw3'], $resultfs['m_tl3'], $resultfs['m_tsis3'], $resultfs['m_tseng3'], $resultfs['m_tsce3'], $resultfs['m_fe']);
echo "<td>".min($nilaifs)."</td> "; }
Nilai rekomendasi untuk jabatan ”Kasie. Komersial” diperoleh dengan mencari nilai minimum dari nilai derajat keanggotaan untuk himpunan baik variabel ach (m_ach3), variabel co (m_co3), variabel cso (m_cso3), variabel rb (m_rb3), variabel at (m_at3), variabel ct (m_ct3), variabel int (m_int3), variabel dev (m_dev3), variabel dir (m_dir3), variabel tw (m_tw3), variabel tl (m_tl3), variabel ts-is (m_tsis3), variabel ts-eng (m_tseng3), variabel ts-ce (m_tsce3), dan nilai crisp dari variabel fe (m_fe).
Di bawah ini adalah script penghitungan nilai fire strength untuk jabatan ”Kasie. Safety, Health Environment (SHE)”.
else if($baris=="Kasie. Safety, Health Environment (SHE)"){ $hasilfs=mysql_query("SELECT m_ach3, m_co3, m_cso3, m_iu3, m_rb3, m_at3, m_ct3, m_int3, m_dev3, m_dir3, m_tw3, m_tl3, m_tseng3, m_tshr3, m_fe from mu where nip = $nip");
$resultfs=mysql_fetch_array($hasilfs);
$nilaifs = array($resultfs['m_ach3'], $resultfs['m_co3'], $resultfs['m_cso3'], $resultfs['m_iu3'], $resultfs['m_rb3'], $resultfs['m_at3'], $resultfs['m_ct3'], $resultfs['m_int3'], $resultfs['m_dev3'], $resultfs['m_dir3'], $resultfs['m_tw3'], $resultfs['m_tl3'], $resultfs['m_tseng3'], $resultfs['m_tshr3'],$resultfs['m_fe']);
echo "<td>".min($nilaifs)."</td> "; }
Lanjutan Gambar 3.11 Script Penghitungan Nilai Rekomendasi untuk “Kasie. Komersial”
Gambar 3.12 Script Penghitungan Nilai Rekomendasi untuk “Kasie. Safety, Health Environment (SHE)”
Nilai rekomendasi untuk jabatan ”Kasie. Safety, Health Environment (SHE)” diperoleh dengan mencari nilai minimum dari nilai derajat keanggotaan untuk himpunan baik variabel ach (m_ach3), variabel co (m_co3), variabel cso (m_cso3), variabel iu (m_iu3), variabel rb (m_rb3), variabel at (m_at3), variabel ct (m_ct3), variabel int (m_int3), variabel dev (m_dev3), variabel dir (m_dir3), variabel tw (m_tw3), variabel tl (m_tl3), variabel ts-eng (m_tseng3), variabel ts-hr (m_tshr3), dan nilai crisp dari variabel fe (m_fe).
Di bawah ini adalah script penghitungan nilai fire strength untuk jabatan ” Kasie. Administrasi Kontrak”.
else if($baris=="Kasie. Administrasi Kontrak"){
$hasilfs=mysql_query("SELECT m_ach3, m_co3, m_cso3, m_rb3, m_at3, m_ct3, m_int3, m_dev3, m_dir3, m_tw3, m_tl3, m_tsis3, m_tseng3, m_tslaw3, m_tsac3, m_fe from mu where nip=$nip");
$resultfs=mysql_fetch_array($hasilfs);
$nilaifs = array($resultfs['m_ach3'], $resultfs['m_co3'], $resultfs['m_cso3'], $resultfs['m_rb3'], $resultfs['m_at3'], $resultfs['m_ct3'],
$resultfs['m_int3'], $resultfs['m_dev3'], $resultfs['m_dir3'], $resultfs['m_tw3'], $resultfs['m_tl3'], $resultfs['m_tsis3'], $resultfs['m_tseng3'], $resultfs['m_tslaw3'], $resultfs['m_tsac3'],$resultfs['m_fe']);
echo "<td>".min($nilaifs)."</td> "; }
Nilai rekomendasi untuk jabatan ”Kasie. Administrasi Kontrak” diperoleh dengan mencari nilai minimum dari nilai derajat keanggotaan untuk himpunan baik variabel ach (m_ach3), variabel co (m_co3), variabel cso (m_cso3), variabel rb (m_rb3), variabel at (m_at3), variabel ct (m_ct3), variabel int (m_int3), variabel dev (m_dev3), variabel dir (m_dir3), variabel tw (m_tw3), variabel tl (m_tl3), variabel is (m_tsis3), variabel eng (m_tseng3), variabel ts-law (m_tsts-law3), variabel ts-ac (m_tsac3), dan nilai crisp dari variabel fe (m_fe).
Gambar 3.14 adalah script penghitungan nilai fire strength untuk jabatan ” Kasie. Keuangan & Administrasi”.
Gambar 3.13 Script Penghitungan Nilai Rekomendasi untuk “Kasie. Administrasi Kontrak”
else if($baris=="Kasie. Keuangan & Administrasi"){
$hasilfs=mysql_query("SELECT m_ach3, m_co3, m_rb3, m_at3, m_ct3, m_int3, m_dev3, m_dir3, m_tw3, m_tl3, m_tsis3, m_tsfa3, m_fe from mu where nip=$nip");
$resultfs=mysql_fetch_array($hasilfs);
$nilaifs = array($resultfs['m_ach3'], $resultfs['m_co3'], $resultfs['m_rb3'], $resultfs['m_at3'], $resultfs['m_ct3'], $resultfs['m_int3'], $resultfs['m_dev3'], $resultfs['m_dir3'], $resultfs['m_tw3'], $resultfs['m_tl3'], $resultfs['m_tsis3'], $resultfs['m_tsfa3'], $resultfs['m_fe']);
echo "<td>".min($nilaifs)."</td> "; }
Nilai rekomendasi untuk jabatan ”Kasie. Keuangan & Administrasi” diperoleh dengan mencari nilai minimum dari nilai derajat keanggotaan untuk himpunan baik variabel ach (m_ach3), variabel co (m_co3), variabel rb (m_rb3), variabel at (m_at3), variabel ct (m_ct3), variabel int (m_int3), variabel dev (m_dev3), variabel dir (m_dir3), variabel tw (m_tw3), variabel tl (m_tl3), variabel ts-is (m_tsis3), variabel ts-fa (m_tsfa3), dan nilai crisp dari variabel fe (m_fe).
Gambar 3.15 adalah script penghitungan nilai fire strength untuk jabatan ” Kasie. Keuangan & Administrasi”.
else if($baris=="Kasie. Engineering"){
$hasilfs=mysql_query("SELECT m_ach3, m_co3, m_rb3, m_at3, m_ct3, m_int3, m_dev3, m_dir3, m_tw3, m_tl3, m_tscm3, m_fe from mu where nip=$nip");
$resultfs=mysql_fetch_array($hasilfs);
$nilaifs = array($resultfs['m_ach3'], $resultfs['m_co3'], $resultfs['m_rb3'], $resultfs['m_at3'], $resultfs['m_ct3'], $resultfs['m_int3'], $resultfs['m_dev3'], $resultfs['m_dir3'], $resultfs['m_tw3'], $resultfs['m_tl3'], $resultfs['m_tscm3'],$resultfs['m_fe']);
echo "<td>".min($nilaifs)."</td> "; }
Gambar 3.14 Script Penghitungan Nilai Rekomendasi untuk “Kasie. Keuangan & Administrasi”
Gambar 3.15 Script Penghitungan Nilai Rekomendasi untuk “Kasie. Engineering”
Nilai rekomendasi untuk jabatan ”Kasie. Engineering” diperoleh dengan mencari nilai minimum dari nilai derajat keanggotaan untuk himpunan baik variabel ach (m_ach3), variabel co (m_co3), variabel rb (m_rb3), variabel at (m_at3), variabel ct (m_ct3), variabel int (m_int3), variabel dev (m_dev3), variabel dir (m_dir3), variabel tw (m_tw3), variabel tl (m_tl3), variabel ts-cm (m_tscm3), dan nilai crisp dari variabel fe (m_fe).
Gambar 3.16 adalah script penghitungan nilai fire strength untuk jabatan ” Kasie. Konstruksi”.
else if($baris=="Kasie. Konstruksi"){
$hasilfs=mysql_query("SELECT m_ach3, m_co3, m_inf3, m_rb3, m_at3, m_ct3, m_int3, m_dev3, m_dir3, m_tw3, m_tl3, m_mspos3, m_tstd3, m_tsed3 , m_fe from mu where nip=$nip");
$resultfs=mysql_fetch_array($hasilfs);
$nilaifs = array($resultfs['m_ach3'], $resultfs['m_co3'], $resultfs['m_inf3'], $resultfs['m_rb3'], $resultfs['m_at3'], $resultfs['m_ct3'], $resultfs['m_int3'], $resultfs['m_dev3'], $resultfs['m_dir3'], $resultfs['m_tw3'], $resultfs['m_tl3'], $resultfs['m_mspos3'], $resultfs['m_tstd3'], $resultfs['m_tsed3'],$resultfs['m_fe']);
echo "<td>".min($nilaifs)."</td> "; }
Nilai rekomendasi untuk jabatan ”Kasie. Konstruksi” diperoleh dengan mencari nilai minimum dari nilai derajat keanggotaan untuk himpunan baik variabel ach (m_ach3), variabel co (m_co3), variabel inf (m_inf3), variabel rb (m_rb3), variabel at (m_at3), variabel ct (m_ct3), variabel int (m_int3), variabel dev (m_dev3), variabel dir (m_dir3), variabel tw (m_tw3), variabel tl (m_tl3), variabel ms-pos (m_mspos3), variabel ts-td (m_tstd3), variabel ts-ed (m_tsed3), dan nilai crisp dari variabel fe (m_fe).
Gambar 3.17 adalah script penghitungan nilai fire strength untuk jabatan ” Kasie. Quality Assurance”.
Gambar 3.16 Script Penghitungan Nilai Rekomendasi untuk “Kasie. Konstruksi”
else if($baris=="Kasie. Quality Assurance"){
$hasilfs=mysql_query("SELECT m_ach3, m_co3, m_cso3, m_rb3, m_at3, m_ct3, m_int3, m_dev3, m_dir3, m_tw3, m_tseng3, m_tsmar3, m_fe from mu where nip=$nip");
$resultfs=mysql_fetch_array($hasilfs);
$nilaifs = array($resultfs['m_ach3'], $resultfs['m_co3'], $resultfs['m_cso3'], $resultfs['m_rb3'], $resultfs['m_at3'], $resultfs['m_ct3'], $resultfs['m_int3'], $resultfs['m_dev3'], $resultfs['m_dir3'], $resultfs['m_tw3'], $resultfs['m_tseng3'], $resultfs['m_tsmar3'], $resultfs['m_fe']);
echo "<td>".min($nilaifs)."</td> "; }
Nilai rekomendasi untuk jabatan ”Kasie. Quality Assurance” diperoleh dengan mencari nilai minimum dari nilai derajat keanggotaan untuk himpunan baik variabel ach (m_ach3), variabel co (m_co3), variabel inf (m_inf3), variabel rb (m_rb3), variabel at (m_at3), variabel ct (m_ct3), variabel int (m_int3), variabel dev (m_dev3), variabel dir (m_dir3), variabel tw (m_tw3), variabel tl (m_tl3), variabel ms-pos (m_mspos3), variabel ts-td (m_tstd3), variabel ts-ed (m_tsed3), dan nilai crisp dari variabel fe (m_fe).
else if($baris=="Kasie. Quantity Survey"){
$hasilfs=mysql_query("SELECT m_ach3, m_co3, m_inf3, m_rb3, m_at3, m_ct3, m_int3, m_dev3, m_dir3, m_tw3, m_tl3, m_tslab3, m_tssv3, m_fe from mu where nip=$nip");
$resultfs=mysql_fetch_array($hasilfs);
$nilaifs = array($resultfs['m_ach3'], $resultfs['m_co3'], $resultfs['m_inf3'], $resultfs['m_rb3'], $resultfs['m_at3'], $resultfs['m_ct3'], $resultfs['m_int3'], $resultfs['m_dev3'], $resultfs['m_dir3'], $resultfs['m_tw3'], $resultfs['m_tl3'], $resultfs['m_tslab3'], $resultfs['m_tssv3'],$resultfs['m_fe']);
echo "<td>".min($nilaifs)."</td> "; }
Gambar 3.17 Script Penghitungan Nilai Rekomendasi untuk “Kasie. Quality Assurance”
Gambar 3.18 adalah script penghitungan nilai fire strength untuk jabatan ” Kasie. Quantity Survey”. Nilai rekomendasi untuk jabatan ”Kasie. Quantity Survey” diperoleh dengan mencari nilai minimum dari nilai derajat keanggotaan untuk himpunan baik variabel ach (m_ach3), variabel co (m_co3), variabel inf (m_inf3), variabel rb (m_rb3), variabel at (m_at3), variabel ct (m_ct3), variabel int (m_int3), variabel dev (m_dev3), variabel dir (m_dir3), variabel tw (m_tw3), variabel tl (m_tl3), variabel ts-lab (m_tslab3), variabel ts-sv (m_tssv3), dan nilai crisp dari variabel fe (m_fe).
Gambar 3.19 adalah script penghitungan nilai fire strength untuk jabatan ” Kasie. Pengadaan”.
else if($baris=="Kasie. Pengadaan"){
$hasilfs=mysql_query("SELECT m_ach3, m_co3, m_rb3, m_at3, m_ct3, m_int3, m_dev3, m_dir3, m_tw3, m_tl3, m_tsta3, m_tspro3, m_fe from mu where nip=$nip");
$resultfs=mysql_fetch_array($hasilfs);
$nilaifs = array($resultfs['m_ach3'], $resultfs['m_co3'], $resultfs['m_rb3'], $resultfs['m_at3'], $resultfs['m_ct3'], $resultfs['m_int3'], $resultfs['m_dev3'], $resultfs['m_dir3'], $resultfs['m_tw3'], $resultfs['m_tl3'], $resultfs['m_tsta3'], $resultfs['m_tspro3'], $resultfs['m_fe']);
echo "<td>".min($nilaifs)."</td> "; }
Nilai rekomendasi untuk jabatan ”Kasie. Pengadaan” diperoleh dengan mencari nilai minimum dari nilai derajat keanggotaan untuk himpunan baik variabel ach (m_ach3), variabel co (m_co3), variabel rb (m_rb3), variabel at (m_at3), variabel ct (m_ct3), variabel int (m_int3), variabel dev (m_dev3), variabel dir (m_dir3), variabel tw (m_tw3), variabel tl (m_tl3), variabel ts-ta (m_tsta3), variabel ts-pro (m_tspro3), dan nilai crisp dari variabel fe (m_fe).